.elementor-3605 .elementor-element.elementor-element-b0e917d:not(.elementor-motion-effects-element-type-background), .elementor-3605 .elementor-element.elementor-element-b0e917d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-3605 .elementor-element.elementor-element-b0e917d{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 50px 50px 50px;}.elementor-3605 .elementor-element.elementor-element-b0e917d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3605 .elementor-element.elementor-element-e11aba3{text-align:center;}.elementor-3605 .elementor-element.elementor-element-e11aba3 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-7351761 );}.elementor-3605 .elementor-element.elementor-element-fa19955{padding:50px 0px 50px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-3605 .elementor-element.elementor-element-e11aba3 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-3605 .elementor-element.elementor-element-e11aba3 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for wp-widget-gform_widget, class: .elementor-element-c054a1d *//* =========================
   LTI Gravity Form Styling
   Form CSS Class: lti-application-form
   ========================= */

.lti-application-form_wrapper {
  max-width: 900px;
  margin: 0 auto;
}

.lti-application-form_wrapper .gform_heading {
  margin-bottom: 24px;
}

.lti-application-form_wrapper .gform_title {
  font-size: 34px;
  line-height: 1.2;
  font-weight: 700;
  color: #2f4a74;
  margin-bottom: 10px;
}

.lti-application-form_wrapper .gform_description {
  font-size: 17px;
  line-height: 1.6;
  color: #444;
}

/* Form body spacing */
.lti-application-form_wrapper .gform_body {
  margin-top: 10px;
}

/* Section descriptions and HTML blocks */
.lti-application-form_wrapper .gfield_html,
.lti-application-form_wrapper .gsection_description,
.lti-application-form_wrapper .instruction {
  font-size: 16px;
  line-height: 1.7;
  color: #333;
}

/* Section headers */
.lti-application-form_wrapper .gsection {
  border: none;
  border-top: 1px solid #d9dee7;
  padding-top: 30px;
  margin-top: 34px;
  margin-bottom: 8px;
}

.lti-application-form_wrapper .gsection .gsection_title {
  font-size: 24px;
  font-weight: 700;
  color: #2f4a74;
  margin-bottom: 6px;
}

/* Field labels */
.lti-application-form_wrapper .gfield_label {
  font-size: 16px;
  font-weight: 600;
  color: #1f2f46;
  margin-bottom: 8px;
}

/* Required asterisk */
.lti-application-form_wrapper .gfield_required {
  color: #a94442;
  margin-left: 3px;
}

/* Inputs */
.lti-application-form_wrapper input[type="text"],
.lti-application-form_wrapper input[type="email"],
.lti-application-form_wrapper input[type="tel"],
.lti-application-form_wrapper input[type="number"],
.lti-application-form_wrapper input[type="url"],
.lti-application-form_wrapper input[type="password"],
.lti-application-form_wrapper input[type="file"],
.lti-application-form_wrapper select,
.lti-application-form_wrapper textarea {
  width: 100%;
  background: #fff;
  border: 1px solid #ccd3dd;
  border-radius: 8px;
  font-size: 16px;
  line-height: 1.4;
  color: #222;
  padding: 14px 16px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-sizing: border-box;
}

/* Textareas */
.lti-application-form_wrapper textarea {
  min-height: 150px;
  resize: vertical;
}

/* Focus states */
.lti-application-form_wrapper input:focus,
.lti-application-form_wrapper select:focus,
.lti-application-form_wrapper textarea:focus {
  outline: none;
  border-color: #2f4a74;
  box-shadow: 0 0 0 3px rgba(47, 74, 116, 0.12);
}

/* Placeholder styling */
.lti-application-form_wrapper ::placeholder {
  color: #8b95a5;
  opacity: 1;
}

/* Checkbox / radio styling spacing */
.lti-application-form_wrapper .gchoice {
  margin-bottom: 10px;
}

.lti-application-form_wrapper .gchoice label {
  font-size: 15px;
  line-height: 1.5;
  color: #333;
}

/* Consent / agreement blocks */
.lti-application-form_wrapper .ginput_container_consent,
.lti-application-form_wrapper .ginput_container_checkbox {
  background: #f7f8fb;
  border: 1px solid #dde3ec;
  border-radius: 8px;
  padding: 16px 18px;
}

/* HTML requirement box */
.lti-application-form_wrapper .lti-requirements-box {
  background: #f7f8fb;
  border: 1px solid #dde3ec;
  border-radius: 10px;
  padding: 24px;
  margin-bottom: 12px;
}

.lti-application-form_wrapper .lti-requirements-box h3 {
  margin: 0 0 14px 0;
  font-size: 22px;
  line-height: 1.3;
  color: #2f4a74;
}

.lti-application-form_wrapper .lti-requirements-box p,
.lti-application-form_wrapper .lti-requirements-box li {
  font-size: 16px;
  line-height: 1.7;
  color: #333;
}

.lti-application-form_wrapper .lti-requirements-box ul,
.lti-application-form_wrapper .lti-requirements-box ol {
  margin: 12px 0 0 20px;
  padding: 0;
}

/* File upload */
.lti-application-form_wrapper .ginput_container_fileupload input[type="file"] {
  padding: 12px;
  background: #f9fafc;
}

/* Page break / progress bar */
.lti-application-form_wrapper .gf_page_steps {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
  border: none;
}

.lti-application-form_wrapper .gf_step {
  flex: 1 1 120px;
  min-width: 120px;
  text-align: center;
  border: 1px solid #dbe1e9;
  border-radius: 8px;
  padding: 12px 10px;
  background: #f7f8fb;
}

.lti-application-form_wrapper .gf_step_label {
  font-size: 14px;
  line-height: 1.3;
  color: #4f5f76;
}

.lti-application-form_wrapper .gf_step_active,
.lti-application-form_wrapper .gf_step_completed {
  background: #2f4a74;
  border-color: #2f4a74;
}

.lti-application-form_wrapper .gf_step_active .gf_step_label,
.lti-application-form_wrapper .gf_step_completed .gf_step_label {
  color: #fff;
}

/* Page break buttons */
.lti-application-form_wrapper .gform_page_footer {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid #e0e5ec;
}

/* Buttons */
.lti-application-form_wrapper .gform_button,
.lti-application-form_wrapper .gform_previous_button,
.lti-application-form_wrapper .gform_next_button {
  appearance: none;
  border: none;
  border-radius: 8px;
  background: #2f4a74;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  padding: 14px 22px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.lti-application-form_wrapper .gform_previous_button {
  background: #7f8da3;
}

.lti-application-form_wrapper .gform_button:hover,
.lti-application-form_wrapper .gform_next_button:hover {
  background: #243a5b;
}

.lti-application-form_wrapper .gform_previous_button:hover {
  background: #6f7d93;
}

.lti-application-form_wrapper .gform_button:active,
.lti-application-form_wrapper .gform_next_button:active,
.lti-application-form_wrapper .gform_previous_button:active {
  transform: translateY(1px);
}

/* Validation errors */
.lti-application-form_wrapper .gfield_error input,
.lti-application-form_wrapper .gfield_error select,
.lti-application-form_wrapper .gfield_error textarea {
  border-color: #c0392b;
  background: #fffdfd;
}

.lti-application-form_wrapper .validation_message,
.lti-application-form_wrapper .gform_validation_errors {
  color: #a12622;
  font-size: 14px;
  line-height: 1.5;
}

.lti-application-form_wrapper .gform_validation_errors {
  background: #fff5f5;
  border: 1px solid #e8bcbc;
  border-radius: 8px;
  padding: 16px 18px;
  margin-bottom: 24px;
}

/* Success confirmation */
.lti-application-form_wrapper .gform_confirmation_message {
  background: #f4f8f4;
  border: 1px solid #c8dcc8;
  border-radius: 10px;
  padding: 22px 24px;
  font-size: 17px;
  line-height: 1.7;
  color: #264526;
}

/* Spacing between fields */
.lti-application-form_wrapper .gfield {
  margin-bottom: 20px;
}

/* Two-column layouts on desktop only if using GF column classes */
@media (min-width: 768px) {
  .lti-application-form_wrapper .gform_fields {
    row-gap: 10px;
  }
}

/* Mobile tweaks */
@media (max-width: 767px) {
  .lti-application-form_wrapper .gform_title {
    font-size: 28px;
  }

  .lti-application-form_wrapper .gsection .gsection_title {
    font-size: 21px;
  }

  .lti-application-form_wrapper input[type="text"],
  .lti-application-form_wrapper input[type="email"],
  .lti-application-form_wrapper input[type="tel"],
  .lti-application-form_wrapper input[type="number"],
  .lti-application-form_wrapper input[type="url"],
  .lti-application-form_wrapper select,
  .lti-application-form_wrapper textarea {
    font-size: 16px;
  }

  .lti-application-form_wrapper .gf_page_steps {
    gap: 8px;
  }

  .lti-application-form_wrapper .gf_step {
    min-width: calc(50% - 8px);
  }
}/* End custom CSS */