I noticed both of your variables appear to have been log transformed. If your criterion c is naturally non-negative and continuous, you might consider using one of the likelihood functions designed for that purpose (e.g., exponential, gamma, log-normal, Weibull). For example, here’s a version of your model where log_q predicts c, using the Weibull likelihood.
# load
library(tidyverse)
library(brms)
# wrangle
dat <- dat %>%
mutate(q = exp(log_q),
c = exp(log_c))
# fit
fit_weibull <-
brm(
data = dat,
family = weibull,
c ~ 1 + log_q,
cores = 4, seed = 4
)
# plot
conditional_effects(fit_weibull) %>%
plot(points = TRUE)

The fit isn’t perfect, but this model’s a big win from a parsimony perspective.