.elementor-467 .elementor-element.elementor-element-c8722f1{--display:flex;overflow:visible;}.elementor-467 .elementor-element.elementor-element-2a8e0f8{--display:flex;overflow:visible;}.elementor-467 .elementor-element.elementor-element-58752c0{--display:flex;overflow:visible;}.elementor-467 .elementor-element.elementor-element-52bbdd6{--display:flex;overflow:visible;}.elementor-467 .elementor-element.elementor-element-712533c{--display:flex;overflow:visible;}/* Start custom CSS for shortcode, class: .elementor-element-3e5324b *//* ----------------------------
   Tharhium — Ninja Forms Styles
   Colors: #013049 (navy) / #febe00 (yellow)
   ---------------------------- */

/* Vars */
:root{
  --tharhium-navy: #013049;
  --tharhium-navy-2: #02486e;
  --tharhium-yellow: #febe00;
  --tharhium-light: rgba(255,255,255,0.94);
  --tharhium-muted: #6b7f88;
  --radius: 12px;
  --shadow-lg: 0 18px 40px rgba(1,48,73,0.12);
  --shadow-sm: 0 6px 18px rgba(1,48,73,0.06);
}

/* Form container (card) */
.ninja-forms-form .nf-form-cont,
.nf-form-cont {
  background: linear-gradient(135deg, rgba(1,48,73,0.98) 0%, rgba(2,72,110,0.95) 100%);
  border-radius: var(--radius);
  padding: 28px;
  color: var(--tharhium-light);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.04);
  font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* Optional light card variant (use on light backgrounds) */
.nf-form-cont.nf-card-light {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,255,255,0.92));
  color: #0b2b3b;
  border: 1px solid rgba(1,48,73,0.06);
}

/* Headline / description inside form */
.ninja-forms-form .nf-form-title,
.ninja-forms-form .nf-form-description {
  margin-bottom: 14px;
  letter-spacing: 0.2px;
}
.ninja-forms-form .nf-form-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--tharhium-light);
}
.ninja-forms-form .nf-form-description {
  color: rgba(255,255,255,0.85);
  font-size: 14px;
}

/* Fields grid layout */
.ninja-forms-form .nf-fields {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 780px) {
  .ninja-forms-form .nf-fields { grid-template-columns: 1fr; }
}

/* Field wrapper */
.nf-field {
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border-radius: 10px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,0.04);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* Label */
.nf-field .nf-field-label label,
.nf-field label {
  display: block;
  font-size: 13px;
  margin-bottom: 8px;
  color: rgba(255,255,255,0.9);
  font-weight: 600;
}

/* Inputs / textarea / select */
.nf-field .nf-field-element input[type="text"],
.nf-field .nf-field-element input[type="email"],
.nf-field .nf-field-element input[type="tel"],
.nf-field .nf-field-element input[type="url"],
.nf-field .nf-field-element textarea,
.nf-field .nf-field-element select,
.nf-field .nf-field-element input[type="number"],
.nf-field .nf-field-element .nf-file {
  width: 100%;
  background: rgba(255,255,255,0.03);
  color: var(--tharhium-light);
  border: 1px solid rgba(255,255,255,0.06);
  padding: 12px 14px;
  border-radius: 8px;
  font-size: 14px;
  outline: none;
  transition: box-shadow .12s ease, border-color .12s ease, transform .12s ease;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  resize: vertical;
}

/* Placeholder color */
.nf-field .nf-field-element ::placeholder { color: rgba(255,255,255,0.5); }

/* Hover & focus */
.nf-field:hover { transform: translateY(-4px); box-shadow: var(--shadow-sm); }
.nf-field .nf-field-element input:focus,
.nf-field .nf-field-element textarea:focus,
.nf-field .nf-field-element select:focus {
  border-color: var(--tharhium-yellow);
  box-shadow: 0 6px 30px rgba(254,190,0,0.12);
  background: rgba(255,255,255,0.04);
}

/* Small helper / hint text */
.nf-field .nf-field-error,
.nf-field .nf-field-desc,
.nf-field .nf-field-error-message {
  font-size: 12px;
  color: rgba(255,255,255,0.85);
}

/* Error styles */
.nf-field.nf-error {
  border: 1px solid rgba(255,90,90,0.2);
  background: linear-gradient(180deg, rgba(255,90,90,0.02), rgba(255,90,90,0.01));
  transform: translateY(0);
}
.nf-field.nf-error .nf-field-element input,
.nf-field.nf-error .nf-field-element textarea,
.nf-field.nf-error .nf-field-element select {
  border-color: rgba(255,90,90,0.6);
  box-shadow: 0 6px 30px rgba(255,90,90,0.06);
}
.nf-error .nf-field-error-message { color: #ffdddd; }

/* Radio & checkbox modern look */
.nf-field .nf-field-element input[type="checkbox"],
.nf-field .nf-field-element input[type="radio"] {
  width: 18px;
  height: 18px;
  accent-color: var(--tharhium-yellow);
  margin-right: 10px;
  vertical-align: middle;
}
.nf-field .nf-field-element label.inline { display: inline-flex; align-items: center; gap:8px; color: var(--tharhium-light); }

/* File input styling - show custom box */
.nf-field .nf-field-element .nf-file {
  padding: 12px;
  display: block;
  border-radius: 8px;
}

/* Submit button */
.nf-submit-wrap .nf-btn,
.nf-form-cont .nf-form-cont .nf-btn,
.nf-form-cont .button,
.nf-form-cont input[type="submit"] {
  display: inline-block;
  background: linear-gradient(90deg, var(--tharhium-yellow), #ffd84d);
  color: #07222b;
  font-weight: 700;
  border: none;
  padding: 12px 20px;
  border-radius: 999px;
  cursor: pointer;
  font-size: 15px;
  letter-spacing: 0.3px;
  box-shadow: 0 10px 30px rgba(2,72,110,0.12);
  transition: transform .12s ease, box-shadow .12s ease;
}
.nf-submit-wrap .nf-btn:hover,
.nf-submit-wrap .nf-btn:focus,
.nf-form-cont input[type="submit"]:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(2,72,110,0.15);
}

/* Secondary / ghost button */
.nf-submit-wrap .nf-btn.ghost {
  background: transparent;
  color: var(--tharhium-light);
  border: 1px solid rgba(255,255,255,0.06);
  box-shadow: none;
}

/* Success / response message */
.ninja-forms-form .ninja-forms-response-msg {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: linear-gradient(90deg, rgba(2,184,129,0.08), rgba(2,184,129,0.03));
  color: rgba(255,255,255,0.95);
  border: 1px solid rgba(2,184,129,0.06);
}

/* Tiny UI polish: icons inside inputs (if used) */
.nf-field .nf-field-element .nf-input-icon {
  position: absolute;
  right: 14px;
  top: 14px;
  pointer-events: none;
  opacity: 0.7;
}

/* Compact full-width mode */
.nf-form-cont.fullwidth .nf-fields { grid-template-columns: 1fr; }

/* Accessibility: clear focus outline fallback */
.nf-field .nf-field-element input:focus-visible,
.nf-field .nf-field-element textarea:focus-visible,
.nf-field .nf-field-element select:focus-visible,
.nf-submit-wrap .nf-btn:focus-visible {
  outline: 3px solid rgba(254,190,0,0.18);
  outline-offset: 3px;
}

/* Mobile tweaks */
@media (max-width:480px) {
  .nf-form-cont { padding: 18px; border-radius: 10px; }
  .ninja-forms-form .nf-form-title { font-size: 18px; }
  .nf-submit-wrap .nf-btn { width: 100%; padding: 14px; font-size: 16px; border-radius: 10px; }
}/* End custom CSS */