.tp-formbox-wrap {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

form.formbox-form {
  --formbox-accent: #008080;
  --formbox-accent-contrast: #ffffff;
  --formbox-accent-soft: rgba(0, 128, 128, 0.10);
  --formbox-focus: rgba(0, 128, 128, 0.24);
  --formbox-border: #cbd4d4;
  --formbox-text: #333333;
  --formbox-muted: #667070;
  --formbox-surface: #ffffff;
  --formbox-panel: #ffffff;
  --formbox-radius: 0;
  --formbox-max-width: 600px;
  max-width: 600px;
  margin: 0 auto;
  padding: clamp(1rem, 2.5vw, 1.5rem);
  border: 1px solid #d6dddd;
  border-top: 4px solid #008080;
  border-radius: 0;
  background: #ffffff;
  color: #333333;
  font-family: Montserrat, Arial, sans-serif;
  box-shadow: 0 10px 24px rgba(0, 64, 64, 0.08);
}

form.formbox-form input:not([type="radio"]):not([type="hidden"]),
form.formbox-form select,
form.formbox-form textarea,
form.formbox-form .formbox-fixed-value,
form.formbox-form .formbox-choice,
form.formbox-form .formbox-submit {
  border-radius: 0;
}

form.formbox-form .formbox-submit {
  min-height: 52px;
  border: 1px solid #008080;
  background: #008080;
  color: #ffffff;
  font-family: Montserrat, Arial, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}

form.formbox-form .formbox-submit:hover,
form.formbox-form .formbox-submit:focus-visible {
  border-color: #333333;
  background: #333333;
  filter: none;
}

form.formbox-form .formbox-required-marker {
  color: var(--formbox-text);
}

form.formbox-form input:invalid,
form.formbox-form select:invalid,
form.formbox-form textarea:invalid {
  color: var(--formbox-text);
  border-color: var(--formbox-border);
  box-shadow: none;
}

form.formbox-form input:focus-visible:invalid,
form.formbox-form select:focus-visible:invalid,
form.formbox-form textarea:focus-visible:invalid {
  border-color: var(--formbox-accent);
  box-shadow: 0 0 0 3px var(--formbox-focus);
}

form.formbox-form [hidden] {
  display: none !important;
}

form.formbox-form .formbox-turnstile-row {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

@media (max-width: 380px) {
  form.formbox-form .formbox-turnstile-row {
    height: 59px;
  }

  form.formbox-form .cf-turnstile {
    transform: scale(0.9);
    transform-origin: left top;
  }
}

@media (max-width: 340px) {
  form.formbox-form .formbox-turnstile-row {
    height: 50px;
  }

  form.formbox-form .cf-turnstile {
    transform: scale(0.75);
  }
}

@media (max-width: 767px) {
  .tp-formbox-wrap,
  form.formbox-form {
    min-width: 0;
    max-width: 100%;
  }
}
