/* Shared, minimal, accessible base for resources.mcalester.city.
   Enqueued site-wide. Kept low-specificity so it complements the theme rather
   than fighting it. Palette matches the directory (assets/directory.css). */

:root{
  --crd-brand:#1a567f; --crd-ink:#1c2430; --crd-muted:#4f5b69;
  --crd-line:#d7dce4; --crd-err:#b3261e;
  --crd-font:'Public Sans',system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --crd-font-head:'Fraunces','Iowan Old Style',Georgia,"Times New Roman",serif;
}

/* --- Type: warmer than system default, kept highly legible (best-effort site-wide;
       the theme may win on some elements, but content + forms + directory pick it up) --- */
body{font-family:var(--crd-font)}
h1,h2,h3,h4,.entry-title,.wp-block-heading{font-family:var(--crd-font-head);letter-spacing:.005em}
.gform_wrapper,.gform_wrapper .gfield_label,.gform_wrapper input,.gform_wrapper textarea,.gform_wrapper select,.gform_wrapper button{font-family:var(--crd-font)}

/* --- Accessibility: a clear, consistent keyboard focus indicator everywhere.
       (Many themes suppress focus outlines; this restores a visible one.) --- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{
  outline:3px solid var(--crd-brand);
  outline-offset:2px;
  border-radius:4px;
}

/* Skip rendering our outline when the theme already shows one via :focus only
   on mouse — :focus-visible handles that distinction for us. */

/* --- Gravity Forms: match the directory and stay accessible --- */
/* Orbital theme honors these CSS custom properties for its accent color. */
.gform-theme--framework,
.gform_wrapper.gravity-theme{
  --gf-color-primary:var(--crd-brand);
  --gf-color-primary-rgb:26,86,127;
  --gf-color-primary-contrast:#fff;
  --gf-color-primary-darker:#13405f;
  --gf-ctrl-border-color-focus:var(--crd-brand);
}
.gform_wrapper{max-width:660px}
.gform_wrapper .gfield_label,
.gform_wrapper .gform-field-label{font-weight:600;color:var(--crd-ink)}
.gform_wrapper .gfield_required{color:var(--crd-err)}
.gform_wrapper .gfield_description,
.gform_wrapper .gform_fileupload_rules{color:var(--crd-muted)}
.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 textarea,
.gform_wrapper select{
  border:1px solid var(--crd-line);border-radius:8px;padding:10px 12px;
  font-size:1rem;background:#fff;color:var(--crd-ink)
}
.gform_wrapper textarea{min-height:96px}
.gform_wrapper .gsection .gsection_title,
.gform_wrapper h2.gsection_title{
  font-size:1.05rem;border-bottom:2px solid var(--crd-line);padding-bottom:6px
}
/* Submit button — both legacy and orbital markup, accessible target size */
.gform_wrapper .gform_footer input[type=submit],
.gform_wrapper .gform_footer button,
.gform_wrapper .gform-footer button,
.gform_wrapper button.gform_button{
  background:var(--crd-brand);color:#fff;border:1px solid var(--crd-brand);
  border-radius:10px;padding:11px 22px;font-size:1rem;min-height:44px;cursor:pointer
}
.gform_wrapper .gform_footer input[type=submit]:hover{filter:brightness(1.1)}
/* Validation — meet contrast, don't rely on color alone (GF adds text + icon) */
.gform_wrapper .validation_message,
.gform_wrapper .gfield_validation_message,
.gform_wrapper .gform_validation_errors{color:var(--crd-err);font-weight:600}
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select{border-color:var(--crd-err)}

/* --- Comfortable reading width for the simple content pages --- */
.entry-content :where(p,ul,ol,h1,h2,h3){max-width:70ch}
