.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-38 .elementor-element.elementor-element-e486322 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-38 .elementor-element.elementor-element-e486322 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-38 .elementor-element.elementor-element-e486322 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-type-html{padding-bottom:0px;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button[type="submit"]{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-38 .elementor-element.elementor-element-e486322{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}/* Start custom CSS for form, class: .elementor-element-e486322 *//* ============================================================
   VANGUARD APPOINTMENTS — ELEMENTOR FORM STYLING
   FOR: the Form widget's own  Advanced > Custom CSS  field.
   ------------------------------------------------------------
   HOW TO USE:
   1. Select your Form widget.
   2. Advanced tab > Custom CSS.
   3. Paste EVERYTHING below into that box.
   4. Build fields: Name, Email, Phone, Message.
      Set the submit button text to "Send message".

   NOTE: ".elementor-38 .elementor-element.elementor-element-e486322" is an Elementor keyword that means
   "this widget only". You do NOT need to add any CSS class —
   it auto-scopes to this form. Do not replace the word .elementor-38 .elementor-element.elementor-element-e486322.
   ============================================================ */

/* ---- field labels ---- */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group > label,
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-label {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #33414f;
  margin-bottom: 7px;
  letter-spacing: 0.2px;
}

/* ---- text inputs, email, tel, textarea, selects ---- */
.elementor-38 .elementor-element.elementor-element-e486322 input[type="text"],
.elementor-38 .elementor-element.elementor-element-e486322 input[type="email"],
.elementor-38 .elementor-element.elementor-element-e486322 input[type="tel"],
.elementor-38 .elementor-element.elementor-element-e486322 input[type="url"],
.elementor-38 .elementor-element.elementor-element-e486322 input[type="number"],
.elementor-38 .elementor-element.elementor-element-e486322 textarea,
.elementor-38 .elementor-element.elementor-element-e486322 select,
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-textual {
  width: 100%;
  background: #f4f6f8;
  border: 1px solid #d9e0e6;
  border-radius: 8px;
  padding: 13px 15px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 15px;
  color: #1c2733;
  line-height: 1.4;
  box-shadow: none;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.elementor-38 .elementor-element.elementor-element-e486322 textarea,
.elementor-38 .elementor-element.elementor-element-e486322 textarea.elementor-field-textual {
  min-height: 120px;
  resize: vertical;
}

/* ---- placeholder text ---- */
.elementor-38 .elementor-element.elementor-element-e486322 input::placeholder,
.elementor-38 .elementor-element.elementor-element-e486322 textarea::placeholder {
  color: #9aa6b1;
  opacity: 1;
}

/* ---- focus state (brand blue ring) ---- */
.elementor-38 .elementor-element.elementor-element-e486322 input:focus,
.elementor-38 .elementor-element.elementor-element-e486322 textarea:focus,
.elementor-38 .elementor-element.elementor-element-e486322 select:focus,
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-textual:focus {
  outline: none;
  background: #ffffff;
  border-color: #0F7CBD;
  box-shadow: 0 0 0 3px rgba(15,124,189,0.15);
}

/* ---- submit button ---- */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button,
.elementor-38 .elementor-element.elementor-element-e486322 button[type="submit"] {
  width: 100%;
  background: linear-gradient(135deg, #0F7CBD, #1B6A95);
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.3px;
  border: none;
  border-radius: 8px;
  padding: 15px 24px;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(15,124,189,0.32);
  transition: transform .18s ease, box-shadow .18s ease;
  will-change: transform;
}

.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button:hover,
.elementor-38 .elementor-element.elementor-element-e486322 button[type="submit"]:hover,
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(15,124,189,0.42);
}

/* keep button label centred */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-button .elementor-button-content-wrapper {
  justify-content: center;
}

/* ---- spacing between fields ---- */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group {
  margin-bottom: 4px;
}

/* ---- success / error messages ---- */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-message {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  border-radius: 8px;
  padding: 12px 14px;
  margin-top: 6px;
}
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-message.elementor-message-success {
  color: #1B6A95;
}
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-message.elementor-message-danger {
  color: #d9534f;
}
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-group .elementor-error .elementor-field {
  border-color: #d9534f;
}

/* ---- required asterisk in brand colour ---- */
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-mark-required .elementor-field-label:after,
.elementor-38 .elementor-element.elementor-element-e486322 .elementor-field-required .elementor-field-label:after {
  color: #0F7CBD;
}/* End custom CSS */