/* Start custom CSS for shortcode, class: .elementor-element-4b5180a *//* ============ AYU CF7 FORM — ELEMENTOR CUSTOM CSS ============
   Self-contained fallback: does not depend on ayu-forms.css or any wrapper class.
   Hardcoded AYU brand colors (not CSS variables) so it works even if the child
   theme's token stylesheet isn't loading in this context. */

.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-form {
  font-family: 'Inter', sans-serif;
  max-width: 640px;
}

/* ---- Layout ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-row-2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  margin: 0 0 24px !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-field--full { grid-column: 1 / -1 !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-checkbox-group { border: none !important; padding: 0 !important; margin: 0 0 24px !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-checkbox-group legend {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: #3F2B70 !important;
  padding: 0 0 8px !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-consent { font-size: 15px !important; color: #4A425E !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-submit { margin-top: 32px !important; }

/* ---- Labels ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a label {
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  color: #201A34 !important;
}

/* ---- Inputs / select / textarea ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="text"],
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="email"],
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="tel"],
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="url"],
.elementor-62 .elementor-element.elementor-element-4b5180a select,
.elementor-62 .elementor-element.elementor-element-4b5180a textarea {
  width: 100% !important;
  min-height: 52px !important;
  padding: 14px 18px !important;
  border: 1px solid #E4DEF0 !important;
  border-radius: 14px !important;
  background: #FFFFFF !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  color: #201A34 !important;
  box-sizing: border-box !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a textarea { min-height: 160px !important; padding-top: 14px !important; resize: vertical !important; }

.elementor-62 .elementor-element.elementor-element-4b5180a input::placeholder,
.elementor-62 .elementor-element.elementor-element-4b5180a textarea::placeholder { color: #4A425E !important; opacity: 0.7 !important; }

.elementor-62 .elementor-element.elementor-element-4b5180a input:hover:not(:focus),
.elementor-62 .elementor-element.elementor-element-4b5180a select:hover:not(:focus),
.elementor-62 .elementor-element.elementor-element-4b5180a textarea:hover:not(:focus) { border-color: #5B4B8A !important; }

.elementor-62 .elementor-element.elementor-element-4b5180a input:focus-visible,
.elementor-62 .elementor-element.elementor-element-4b5180a select:focus-visible,
.elementor-62 .elementor-element.elementor-element-4b5180a textarea:focus-visible {
  outline: 3px solid #0B6E99 !important;
  outline-offset: 2px !important;
  border-color: #0B6E99 !important;
}

/* ---- Checkboxes (Support Needed group + acceptance) ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-checkbox { display: flex !important; flex-direction: column !important; gap: 8px !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-list-item-label { display: inline-flex !important; align-items: center !important; gap: 8px !important; cursor: pointer !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  min-height: 0 !important;
  accent-color: #3F2B70 !important;
  cursor: pointer !important;
}

/* ---- Validation ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-not-valid { border-color: #B33B1F !important; background-color: rgba(179,59,31,0.04) !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-not-valid-tip {
  display: block !important;
  margin-top: 4px !important;
  color: #B33B1F !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

/* ---- Response output ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a .wpcf7-response-output {
  margin: 24px 0 0 !important;
  padding: 16px 24px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  border: 1px solid transparent !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a form.sent .wpcf7-response-output { background: rgba(11,110,153,0.08) !important; border-color: #0B6E99 !important; color: #201A34 !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a form.invalid .wpcf7-response-output,
.elementor-62 .elementor-element.elementor-element-4b5180a form.failed .wpcf7-response-output { background: rgba(179,59,31,0.08) !important; border-color: #B33B1F !important; color: #201A34 !important; }

/* ---- Submit button (this fixes the magenta/pink button) ---- */
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 32px !important;
  border: none !important;
  border-radius: 999px !important;
  background-color: #3F2B70 !important;
  color: #FFFFFF !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background-color 0.18s ease !important;
}
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="submit"]:hover:not(:disabled) { background-color: #2C1D53 !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="submit"]:focus-visible { outline: 3px solid #0B6E99 !important; outline-offset: 3px !important; }
.elementor-62 .elementor-element.elementor-element-4b5180a input[type="submit"]:disabled { opacity: 0.6 !important; cursor: not-allowed !important; }

/* ---- Responsive ---- */
@media (max-width: 768px) {
  .elementor-62 .elementor-element.elementor-element-4b5180a .ayu-form-row-2 { grid-template-columns: 1fr !important; }
}
```/* End custom CSS */