.elementor-7981 .elementor-element.elementor-element-34f4aa2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-7981 .elementor-element.elementor-element-0608104 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-7981 .elementor-element.elementor-element-0608104 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-7981 .elementor-element.elementor-element-0608104 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-type-html{padding-bottom:0px;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-button[type="submit"]{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-7981 .elementor-element.elementor-element-0608104{--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-0608104 *//* ============================================================
   KUSAGA TAKA  ·  CONTACT FORM STYLING
   Makes a plugin-built form match the hand-built form on the
   contact page.

   WHERE TO PASTE:
   Appearance > Customize > Additional CSS
   (or Elementor > Site Settings > Custom CSS if you have Pro)

   Covers Elementor Forms, WPForms and Contact Form 7. Only the
   one you are actually using will apply, the rest sit unused.

   OPTIONAL: to limit this to the contact page only, find the
   page's body class (something like .page-id-42) and put it in
   front of each .elementor-7981 .elementor-element.elementor-element-0608104.
   ============================================================ */

/* ---- the form panel ---- */
.elementor-form,
.wpforms-container .wpforms-form,
.wpcf7-form {
  font-family: "Barlow", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #ffffff;
  border: 1px solid #e4ecea;
  border-radius: 18px;
  padding: clamp(22px, 3vw, 34px);
}

/* WPForms adds its own container padding, strip it */
.wpforms-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* ---- labels ---- */
.elementor-field-group > label,
.wpforms-field label.wpforms-field-label,
.wpcf7-form label {
  font-family: "Barlow", sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #0f2b29 !important;
  margin-bottom: 7px !important;
  display: block;
}

/* the required asterisk in brand teal */
.wpforms-required-label,
.elementor-mark-required .elementor-field-label:after {
  color: #2E9591 !important;
}

/* ---- inputs, selects, textareas ---- */
.elementor-field-textual,
.wpforms-field input[type="text"],
.wpforms-field input[type="email"],
.wpforms-field input[type="tel"],
.wpforms-field input[type="url"],
.wpforms-field select,
.wpforms-field textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form select,
.wpcf7-form textarea {
  font-family: "Barlow", sans-serif !important;
  font-size: 15px !important;
  color: #0f2b29 !important;
  padding: 11px 13px !important;
  border: 1px solid #e4ecea !important;
  border-radius: 9px !important;
  background-color: #ffffff !important;
  width: 100% !important;
  max-width: 100% !important;
  box-shadow: none !important;
  outline: none !important;
  transition: border-color .15s;
}

/* focus state */
.elementor-field-textual:focus,
.wpforms-field input:focus,
.wpforms-field select:focus,
.wpforms-field textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
  border-color: #2E9591 !important;
  box-shadow: none !important;
}

/* placeholder text */
.elementor-field-textual::placeholder,
.wpforms-field input::placeholder,
.wpforms-field textarea::placeholder,
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  color: #9bb0ac !important;
  opacity: 1;
}

/* textarea only grows downward */
.elementor-field-textual.elementor-size-md,
.wpforms-field textarea,
.wpcf7-form textarea {
  resize: vertical !important;
}

/* ---- dropdown arrow (replaces the plain browser one) ---- */
.elementor-field-type-select select,
.wpforms-field select,
.wpcf7-form select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E9591' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 13px center !important;
  background-size: 18px 18px !important;
  padding-right: 40px !important;
  cursor: pointer;
}

/* ---- spacing between fields ---- */
.elementor-field-group {
  margin-bottom: 16px;
}
.wpforms-field {
  padding: 0 0 16px 0 !important;
}
.wpcf7-form p {
  margin-bottom: 16px;
}

/* ---- submit button ---- */
.elementor-button[type="submit"],
.wpforms-submit,
.wpcf7-form input[type="submit"],
.wpcf7-form button[type="submit"] {
  font-family: "Oswald", sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  font-size: 15.5px !important;
  font-weight: 500 !important;
  color: #04201d !important;
  background-color: #2E9591 !important;
  border: 0 !important;
  width: 100% !important;
  padding: 16px !important;
  margin-top: 6px !important;
  border-radius: 11px !important;
  cursor: pointer;
  box-shadow: 0 12px 26px -12px rgba(46, 149, 145, .9) !important;
  transition: transform .15s, background-color .2s;
}

.elementor-button[type="submit"]:hover,
.wpforms-submit:hover,
.wpcf7-form input[type="submit"]:hover,
.wpcf7-form button[type="submit"]:hover {
  background-color: #37b3ad !important;
  transform: translateY(-2px);
}

/* ---- validation and confirmation messages ---- */
.elementor-message.elementor-message-danger,
.wpforms-error,
.wpcf7-not-valid-tip {
  color: #d9534f !important;
  font-size: 13px !important;
}

.wpforms-field input.wpforms-error,
.wpforms-field textarea.wpforms-error,
.wpcf7-form .wpcf7-not-valid {
  border-color: #d9534f !important;
}

.elementor-message.elementor-message-success,
.wpforms-confirmation-container-full,
.wpcf7-response-output {
  font-family: "Barlow", sans-serif !important;
  color: #0f2b29 !important;
  background: #f5f8f7 !important;
  border: 1px solid #e4ecea !important;
  border-left: 4px solid #2E9591 !important;
  border-radius: 9px !important;
  padding: 16px !important;
  font-size: 15px !important;
}

/* ---- two columns on desktop, one on mobile ---- */
@media (min-width: 640px) {
  .wpforms-form .wpforms-field-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 16px;
  }
  /* message box and anything tall spans the full width */
  .wpforms-form .wpforms-field-textarea,
  .wpforms-form .wpforms-field-checkbox {
    grid-column: 1 / -1;
  }
}

/* make sure the button always sits full width under the fields */
.wpforms-form .wpforms-submit-container {
  grid-column: 1 / -1;
}/* End custom CSS */