.itseasi-cf {
  --itseasi-cf-gap: 1rem;
  --itseasi-cf-label-width: 220px;
  --itseasi-cf-input-radius: 0.75rem;
  --itseasi-cf-input-border: #cfd7df;
  --itseasi-cf-bg: transparent;
  --itseasi-cf-text: inherit;
  --itseasi-cf-button-radius: 999px;
  --itseasi-cf-button-bg: var(--bs-primary, #0d6efd);
  --itseasi-cf-button-color: #fff;
  --itseasi-cf-notice-radius: 1rem;
  color: var(--itseasi-cf-text);
  background: var(--itseasi-cf-bg);
}

.itseasi-cf__notice {
  margin-bottom: 1rem;
  border-radius: var(--itseasi-cf-notice-radius);
}

.itseasi-cf__row {
  display: grid;
  grid-template-columns: minmax(0, var(--itseasi-cf-label-width)) minmax(0, 1fr);
  gap: var(--itseasi-cf-gap);
  align-items: start;
  margin-bottom: 1rem;
}

.itseasi-cf__label {
  font-weight: 600;
  line-height: 1.4;
  padding-top: 0.7rem;
}

.itseasi-cf__row--consent .itseasi-cf__label,
.itseasi-cf__row--submit .itseasi-cf__label {
  padding-top: 0;
}

.itseasi-cf__input,
.itseasi-cf__select,
.itseasi-cf__textarea {
  border-color: var(--itseasi-cf-input-border);
  border-radius: var(--itseasi-cf-input-radius);
  min-height: 3rem;
}

.itseasi-cf__textarea {
  min-height: 9rem;
}

.itseasi-cf__hint {
  margin-top: 0.5rem;
  font-size: 0.95rem;
  opacity: 0.85;
}

.itseasi-cf__submit {
  border-radius: var(--itseasi-cf-button-radius);
  background: var(--itseasi-cf-button-bg);
  color: var(--itseasi-cf-button-color);
  border-color: transparent;
  min-width: 220px;
  padding: 0.85rem 1.4rem;
}

.itseasi-cf__submit:disabled {
  opacity: 0.65;
}

.itseasi-cf__honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.itseasi-cf--style-itseasi {
  --itseasi-cf-input-radius: 1rem;
}

.itseasi-cf--style-uwe {
  --itseasi-cf-input-radius: 1rem;
  --itseasi-cf-button-radius: 1rem;
}

@media (max-width: 767px) {
  .itseasi-cf__row {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .itseasi-cf__label {
    padding-top: 0;
  }
}
