/* stylelint-disable */
.wp-component-form__intro {
  display: grid;
  gap: var(--spacing-xxs);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  width: 100%;
  grid-template-rows: auto;
  margin: 0 0 var(--component-form-intro-margin-bottom);
}

@media (min-width: 1023px) {
  .wp-component-form__intro {
    gap: var(--spacing-xxs);
  }
}
.wp-component-form__form-title {
  color: var(--colour-dark-blue-35);
}

.wp-component-form__form-desc {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p-large);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-p-large);
  line-height: var(--line-height-p-large);
  text-transform: none;
  color: var(--colour-dark-blue-35);
}

.wp-component-form {
  background: var(--colour-white);
  border: 1px solid var(--colour-light-blue-50);
  border-radius: var(--radius-image);
  padding: var(--spacing-m) var(--spacing-xs);
}

@media (min-width: 767px) {
  .wp-component-form {
    padding: var(--spacing-m);
  }
}
.wp-component-form input[type=text],
.wp-component-form input[type=number],
.wp-component-form input[type=url],
.wp-component-form input[type=email],
.wp-component-form input[type=tel],
.wp-component-form textarea {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-p);
  line-height: var(--line-height-p);
  text-transform: none;
  background-color: transparent;
  border: 2px solid var(--colour-dark-blue-35);
  border-left: 0;
  border-right: 0;
  border-top: 0;
  color: var(--colour-dark-blue-35);
  height: 56px;
  padding: 0.5rem 1.1rem;
  transition: var(--transition-all);
  width: 100%;
}

.wp-component-form input[type=text]::-moz-placeholder, .wp-component-form input[type=number]::-moz-placeholder, .wp-component-form input[type=url]::-moz-placeholder, .wp-component-form input[type=email]::-moz-placeholder, .wp-component-form input[type=tel]::-moz-placeholder, .wp-component-form textarea::-moz-placeholder {
  color: currentcolor;
  opacity: 0.5;
}

.wp-component-form input[type=text]::placeholder,
.wp-component-form input[type=number]::placeholder,
.wp-component-form input[type=url]::placeholder,
.wp-component-form input[type=email]::placeholder,
.wp-component-form input[type=tel]::placeholder,
.wp-component-form textarea::placeholder {
  color: currentcolor;
  opacity: 0.5;
}

.wp-component-form input[type=text]:hover, .wp-component-form input[type=text]:focus-visible,
.wp-component-form input[type=number]:hover,
.wp-component-form input[type=number]:focus-visible,
.wp-component-form input[type=url]:hover,
.wp-component-form input[type=url]:focus-visible,
.wp-component-form input[type=email]:hover,
.wp-component-form input[type=email]:focus-visible,
.wp-component-form input[type=tel]:hover,
.wp-component-form input[type=tel]:focus-visible,
.wp-component-form textarea:hover,
.wp-component-form textarea:focus-visible {
  border-color: var(--colour-light-blue-100);
}

.wp-component-form input[type=radio],
.wp-component-form input[type=checkbox] {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-p);
  line-height: var(--line-height-p);
  text-transform: none;
  height: 24px;
  opacity: 0;
  position: absolute;
  width: 24px;
}

.wp-component-form input[type=radio] + label,
.wp-component-form input[type=checkbox] + label {
  display: block;
  padding-left: 32px;
  position: relative;
}

.wp-component-form input[type=radio] + label::before,
.wp-component-form input[type=checkbox] + label::before {
  content: "";
  display: block;
  position: absolute;
  border: 2px solid var(--colour-dark-blue-35);
  border-radius: 5px;
  height: 24px;
  left: 0;
  width: 24px;
}

.wp-component-form input[type=radio] + label::after,
.wp-component-form input[type=checkbox] + label::after {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--colour-white);
  height: 24px;
  left: 0;
  -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M16 9L10.5 14.5L8 12" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/></svg>');
          mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M16 9L10.5 14.5L8 12" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  opacity: 0;
  top: 0;
  width: 24px;
}

.wp-component-form input[type=radio]:focus-visible + label::before,
.wp-component-form input[type=checkbox]:focus-visible + label::before {
  outline: 1px solid currentcolor;
  outline-offset: 2px;
}

.wp-component-form input[type=radio]:checked + label::before,
.wp-component-form input[type=checkbox]:checked + label::before {
  background-color: var(--colour-light-blue-100);
  border-color: var(--colour-light-blue-75);
}

.wp-component-form input[type=radio]:checked + label::after,
.wp-component-form input[type=checkbox]:checked + label::after {
  opacity: 1;
}

.wp-component-form input[type=radio] + label::before {
  border-radius: 50%;
}

.wp-component-form legend,
.wp-component-form label {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-label);
  font-weight: 500;
  letter-spacing: var(--letter-spacing-label);
  line-height: var(--line-height-label);
  text-transform: none;
  margin: 0;
  padding: 0;
  position: relative;
  top: 0;
  transition: var(--transition-all);
}

.wp-component-form legend a,
.wp-component-form label a {
  color: inherit;
}

.wp-component-form textarea {
  height: 100px;
  padding-top: var(--spacing-xxs);
}

.wp-component-form .gform_fields {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gravity-forms-field-spacing);
}

.wp-component-form .gfield_label {
  display: block;
  font-weight: 700;
  margin: 0 0 var(--gravity-forms-label-margin-bottom);
}

.wp-component-form .gfield_description {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p-small);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-p-small);
  line-height: var(--line-height-p-small);
  text-transform: none;
  margin-top: var(--spacing-xxs);
}

.wp-component-form .gsection_title {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-6);
  font-weight: 700;
  letter-spacing: var(--letter-spacing-6);
  line-height: var(--line-height-6);
  text-transform: none;
}

.wp-component-form .gfield {
  flex: 0 0 100%;
}

@media (min-width: 767px) {
  .wp-component-form .gfield.half {
    flex: 0 0 calc(50% - var(--gravity-forms-field-spacing) / 2);
  }
}
.wp-component-form .gfield.hidden_label > label,
.wp-component-form .gfield.hidden_label > legend {
  display: none;
}

.wp-component-form .gfield:not(.gfield--type-select, .gfield--type-consent, .gfield--type-checkbox, .gfield--type-radio, .gfield--type-time, .gfield--type-date, .gfield--type-address, .gfield--type-fileupload, .gfield--type-captcha) .gfield_label {
  margin-bottom: 0;
}

.wp-component-form .gfield:not(.gfield--type-select, .gfield--type-consent, .gfield--type-checkbox, .gfield--type-radio, .gfield--type-time, .gfield--type-date, .gfield--type-address, .gfield--type-fileupload, .gfield--type-captcha):has(input:focus-visible) .ginput_container {
  position: relative;
}

.wp-component-form .gfield:not(.gfield--type-select, .gfield--type-consent, .gfield--type-checkbox, .gfield--type-radio, .gfield--type-time, .gfield--type-date, .gfield--type-address, .gfield--type-fileupload, .gfield--type-captcha):has(input:focus-visible) .ginput_container::after {
  background-color: var(--gravity-forms-focus-border-colour, var(--colour-black));
  bottom: -4px;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  width: 100%;
}

.wp-component-form .gfield--type-honeypot,
.wp-component-form .gfield--type-hidden {
  display: none;
}

.wp-component-form .ginput_container_select,
.wp-component-form .ginput_address_country {
  position: relative;
}

.wp-component-form .ginput_address_country .custom-select__dropdown {
  margin-top: -25px;
}

.wp-component-form .gfield_radio,
.wp-component-form .gfield_checkbox {
  display: flex;
  flex-direction: column;
  gap: var(--gravity-forms-choices-spacing);
}

.wp-component-form .gchoice,
.wp-component-form .ginput_container_consent {
  align-items: center;
  display: flex;
  gap: var(--gravity-forms-choice-spacing);
}

.wp-component-form .gform-grid-row {
  display: flex;
  flex-flow: row wrap;
  gap: var(--gravity-forms-field-inner-spacing);
}

.wp-component-form .gform-grid-col {
  flex: none;
  inline-size: 100%;
}

@media (min-width: 767px) {
  .wp-component-form .gform-grid-col--size-auto {
    flex: 1;
  }
}
.wp-component-form .hour_minute_colon {
  display: none;
}

@media (min-width: 767px) {
  .wp-component-form .ginput_container_time {
    inline-size: var(--gravity-forms-time-field-width);
  }
}
@media (min-width: 767px) {
  .wp-component-form .ginput_address_city,
  .wp-component-form .ginput_address_country,
  .wp-component-form .ginput_address_state,
  .wp-component-form .ginput_address_zip {
    flex: 1 0 calc(50% - var(--gravity-forms-field-inner-spacing) / 2);
    max-width: calc(50% - var(--gravity-forms-field-inner-spacing) / 2);
  }
}
.wp-component-form .gform_fileupload_rules {
  display: block;
  margin-top: var(--spacing-xxxs);
}

.wp-component-form .gfield--type-section {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xxxs);
}

.wp-component-form .gfield_consent_description {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p-small);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-p-small);
  line-height: var(--line-height-p-small);
  text-transform: none;
  border: 1px solid var(--colour-dark-blue-35);
  margin-top: var(--spacing-xs);
  max-height: 150px;
  overflow-y: scroll;
  padding: var(--spacing-xxs);
}

.wp-component-form .gf_progressbar_wrapper {
  margin: 0 0 var(--gravity-forms-progress-bar-margin-bottom);
}

.wp-component-form .gf_progressbar_title {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-4);
  font-weight: 700;
  letter-spacing: var(--letter-spacing-4);
  line-height: var(--line-height-4);
  text-transform: none;
  margin: 0 0 var(--gravity-forms-progress-bar-title-margin-bottom);
}

.wp-component-form .gf_progressbar {
  background-color: var(--gravity-forms-progress-bar-background-colour);
  border-radius: var(--gravity-forms-progress-bar-border-radius);
  overflow: hidden;
}

.wp-component-form .gf_progressbar_percentage {
  background-color: var(--gravity-forms-progress-bar-percentage-colour);
  height: var(--gravity-forms-progress-bar-height);
}

.wp-component-form .gf_progressbar_percentage span {
  border: 0 !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  text-indent: -9999px !important;
  transform: scale(0) !important;
  width: 1px !important;
}

.wp-component-form .gform_validation_errors {
  background-color: var(--gravity-forms-error-box-background-colour);
  border: 2px solid var(--gravity-forms-error-box-border-colour);
  margin-bottom: var(--gravity-forms-error-box-margin-bottom);
  padding: var(--gravity-forms-error-box-padding);
}

.wp-component-form .gform_validation_errors > * {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p);
  font-weight: 700;
  letter-spacing: var(--letter-spacing-p);
  line-height: var(--line-height-p);
  text-transform: none;
  color: var(--gravity-forms-error-box-colour);
}

.wp-component-form .gfield_validation_message {
  font-family: var(--font-sans-serif);
  font-size: var(--font-size-p-xsmall);
  font-weight: 700;
  letter-spacing: var(--letter-spacing-p-xsmall);
  line-height: var(--line-height-p-xsmall);
  text-transform: none;
  background-color: var(--gravity-forms-error-message-background-colour);
  color: var(--gravity-forms-error-message-colour);
  margin-top: var(--spacing-xxxs);
  padding: var(--spacing-xxxs);
}

.wp-component-form .gfield_validation_message.validation_message--hidden-on-empty {
  display: none;
}

.wp-component-form .gfield_required {
  color: var(--gravity-forms-required-colour);
  margin-left: var(--gravity-forms-required-spacing);
}

.wp-component-form .gfield_required .gfield_required {
  margin: 0;
}

.wp-component-form .gfield_error input[type=text],
.wp-component-form .gfield_error input[type=number],
.wp-component-form .gfield_error input[type=url],
.wp-component-form .gfield_error input[type=email],
.wp-component-form .gfield_error input[type=tel],
.wp-component-form .gfield_error select,
.wp-component-form .gfield_error textarea {
  border-color: var(--gravity-forms-error-input-border-colour);
}

.wp-component-form .gform_footer,
.wp-component-form .gform_page_footer {
  margin-top: var(--gravity-forms-footer-spacing);
}

.wp-component-form .gform_page_footer {
  display: flex;
  gap: var(--gravity-forms-footer-inner-spacing);
}

.wp-component-form--centered .wp-component-form__intro {
  text-align: center;
}

.wp-component-form--centered .gchoice,
.wp-component-form--centered .ginput_container_consent {
  justify-content: center;
}

.wp-component-form--centered .gform_footer {
  display: flex;
  justify-content: center;
}
