/* Site theme layered over the official amoCRM form. */
:root {
  color-scheme: normal;
  --form-text: #f1f5f9;
  --form-secondary: #94a3b8;
  --form-muted: #64748b;
  --form-accent: #06b6d4;
  --form-font: 'Inter', system-ui, -apple-system, sans-serif;
}
html, body {
  background: transparent !important;
  color: var(--form-text);
  font-family: var(--form-font) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  -webkit-font-smoothing: antialiased;
}
*, *::before, *::after { box-sizing: border-box; }
#amofroms_main_wrapper {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--form-text) !important;
  font-family: var(--form-font) !important;
}
#amoforms_form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.amoforms__fields__container {
  min-width: 0;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: none !important;
}
.amoforms__fields__container:last-of-type,
.amoforms__fields__container:has(input[name="fields[931921_2]"]),
.amoforms__fields__submit,
#amoforms__fields__error-required,
#amoforms__fields__error-typo { grid-column: 1 / -1; }
.amoforms__fields__container__inner {
  display: flex !important;
  flex-direction: column;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.amoforms__field__name {
  display: block !important;
  position: static !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  text-align: left !important;
  color: var(--form-secondary) !important;
  font: 600 12.8px/1.45 var(--form-font) !important;
}
.amoforms__field__name label,
.amoforms__field__name label div {
  display: inline !important;
  color: inherit !important;
  font: inherit !important;
  white-space: normal !important;
}
.amoforms__field__control {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 10px !important;
  transition: border-color .2s, box-shadow .2s;
}
.amoforms__field__control:focus-within {
  border-color: var(--form-accent) !important;
  box-shadow: 0 0 0 3px rgba(6,182,212,.12);
}
#amoforms_form .amoforms__field__control,
#amoforms_form .amoforms__field__control input {
  box-sizing: border-box !important;
  height: 46px !important;
  min-height: 46px !important;
}
#amoforms_form input.text-input {
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  color: var(--form-text) !important;
  font: 400 14px/1.5 var(--form-font) !important;
}
#amoforms_form input.text-input:not([type="tel"]) { padding: 0 13px !important; }
#amoforms_form input[type="tel"] { padding-left: 44px !important; padding-right: 13px !important; }
#amoforms_form input::placeholder { color: var(--form-muted) !important; opacity: 1; }
#amoforms_form input:-webkit-autofill {
  -webkit-text-fill-color: var(--form-text) !important;
  box-shadow: 0 0 0 100px #222632 inset !important;
}
.iti { width: 100%; height: 100%; font-family: var(--form-font) !important; }
.iti__selected-dial-code { color: var(--form-text) !important; font: 400 14px/1.5 var(--form-font) !important; }
.iti__selected-country, .iti__selected-country-primary { background: transparent !important; }
.iti__country-container { left: 13px !important; }
.amoforms__fields__submit { margin: 4px 0 0 !important; padding: 0 !important; }
.amoforms__submit-button__flex { display: block !important; width: 100%; margin: 0 !important; }
#button_submit {
  box-sizing: border-box !important;
  min-width: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #06b6d4, #8b5cf6) !important;
  box-shadow: 0 0 20px rgba(6,182,212,.16) !important;
  color: #fff !important;
  font: 600 14px/1.4 var(--form-font) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  cursor: pointer;
  transition: filter .2s, box-shadow .2s;
}
#button_submit:hover { filter: brightness(1.08); box-shadow: 0 0 26px rgba(6,182,212,.25) !important; }
#button_submit:focus-visible { outline: 2px solid #a5f3fc !important; outline-offset: 3px; }
#button_submit:disabled { cursor: wait; opacity: .7; }
#button_submit .amoforms__submit-button-text { color: inherit; font: inherit; }
#amoforms__fields__error-required:empty, #amoforms__fields__error-typo:empty { display: none; }
#amoforms__fields__error-required, #amoforms__fields__error-typo { color: #fda4af; font: 400 13px/1.5 var(--form-font); }
.amoforms-sended-message_wrapper { box-sizing: border-box !important; width: calc(100% - 16px) !important; max-width: 350px; left: 50% !important; margin-left: 0 !important; transform: translateX(-50%); background: #1b2232 !important; color: var(--form-text) !important; border-radius: 12px; font-family: var(--form-font) !important; }
.amoforms-sended-message_text { color: var(--form-text) !important; }
#amofroms_main_wrapper + div { width: 100% !important; height: auto !important; margin: 12px 0 0; }
.amoforms-footer-copyright { position: static !important; width: 100% !important; height: auto !important; text-align: right; }
#amo_brand { position: static !important; display: flex !important; justify-content: flex-end; align-items: center; gap: 4px; width: auto !important; height: auto !important; padding: 0 !important; margin: 0 !important; background: transparent !important; border: 0 !important; }
#amo_brand p, #amo_brand a { position: static !important; padding: 0 !important; margin: 0 !important; background: transparent !important; color: var(--form-muted) !important; font: 400 10px/1.5 var(--form-font) !important; text-decoration: none; }
#amo_brand a:hover { color: var(--form-accent) !important; }
@media (max-width: 399px) {
  #amoforms_form { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  #amoforms_form input.text-input { font-size: 16px !important; }
  .iti__selected-dial-code { font-size: 16px !important; }
}

.amoforms-sended-message_inner { box-sizing: border-box !important; width: 100% !important; max-width: 100%; }
