/**
 * Podcast single – Question form (Gravity Form) styling
 */

:root {
  /* Question form tokens */
  --qf-max-width: 50rem;
  --qf-padding-top: 1rem;
  --qf-padding-bottom: 5rem;
  --qf-padding-x-mobile: 1.25rem;

  --qf-headline-size: 2rem;
  --qf-headline-margin-bottom: 1.25rem;

  --qf-footer-note-size: 1.1rem;
  --qf-footer-note-color: #666;

  --qf-text-color: #333;
  --qf-required-color: #c00;

  --qf-label-size: 1rem;

  --qf-input-padding-y: 0.65rem;
  --qf-input-padding-x: 0.85rem;
  --qf-input-border-color: #ccc;
  --qf-input-focus-border-color: #555;

  --qf-button-bg: #2d2d2d;
  --qf-button-bg-hover: #1a1a1a;
  --qf-button-font-size: 0.9375rem;

  --qf-confirmation-font-size: 1.125rem;

  --qf-validation-font-size: 1rem;
}

.question_form {
  padding-top: var(--qf-padding-top);
  padding-bottom: var(--qf-padding-bottom);
}

@media (max-width: 767px) {
  .question_form {
    padding-left: var(--qf-padding-x-mobile);
    padding-right: var(--qf-padding-x-mobile);
  }
}

.question_form .question_form-wrap.block_grid {
  display: block;
}

.question_form .question_form-headline {
  max-width: var(--qf-max-width);
  margin-left: auto;
  margin-right: auto;
  font-size: var(--qf-headline-size);
  text-align: center;
  margin-bottom: var(--qf-headline-margin-bottom);
}

.question_form .question_form-footer_note {
  max-width: var(--qf-max-width);
  margin: 1.25rem auto 0;
  font-size: var(--qf-footer-note-size);
  color: var(--qf-footer-note-color);
  text-align: center;
}

.question_form .gform_wrapper {
  max-width: var(--qf-max-width);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}

.question_form .gform_title {
  font-family: inherit;
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 1.25rem;
  color: inherit;
}

.question_form .gfield {
  margin-bottom: 1.25rem;
  padding: 0;
  background: transparent !important;
  border: none !important;
}

.question_form .gfield_label {
  display: block;
  font-family: inherit;
  font-size: var(--qf-label-size);
  font-weight: 600;
  margin-bottom: 0.35rem;
  color: var(--qf-text-color);
}

.question_form .gfield_label .gfield_required {
  color: var(--qf-required-color);
  margin-left: 0.15em;
}

.question_form .validation_message,
.question_form .gfield_validation_message,
.question_form .validation_error {
  font-size: var(--qf-validation-font-size);
  line-height: 1.4;
}

.question_form .ginput_container input[type="text"],
.question_form .ginput_container input[type="email"],
.question_form .ginput_container input[type="tel"],
.question_form .ginput_container input[type="url"],
.question_form .ginput_container textarea {
  width: 100%;
  max-width: 100%;
  padding: var(--qf-input-padding-y) var(--qf-input-padding-x);
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--qf-text-color);
  background: #fff !important;
  border: 1px solid var(--qf-input-border-color);
  border-radius: 0;
  box-sizing: border-box;
  transition: border-color 0.2s ease;
}

.question_form .ginput_container input:focus,
.question_form .ginput_container textarea:focus {
  outline: none;
  border-color: var(--qf-input-focus-border-color);
}

.question_form .ginput_container textarea {
  min-height: 120px;
  resize: vertical;
}

.question_form .gform_footer {
  margin-top: 1.5rem;
  margin-bottom: 0;
  padding: 0;
  text-align: center;
}

.question_form .gform_button,
.question_form input[type="submit"] {
  display: inline-block;
  padding: 0.65rem 1.5rem;
  font-family: inherit;
  font-size: var(--qf-button-font-size);
  font-weight: 600;
  color: #fff;
  background: var(--qf-button-bg);
  border: none;
  border-radius: 0;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.question_form .gform_button:hover,
.question_form input[type="submit"]:hover {
  background: var(--qf-button-bg-hover);
}

.question_form .gform_legacy_markup_wrapper .gfield,
.question_form .gravity-theme .gfield {
  background: transparent !important;
}

.question_form .gform_body .gform_fields {
  margin: 0;
  padding: 0;
  list-style: none;
}

.question_form .gform_body .gform_fields .gfield {
  list-style: none;
}

.question_form .gform_confirmation_message {
  font-size: var(--qf-confirmation-font-size);
  line-height: 1.5;
}
