/* RULATAM form primitives */
.r-form,
.r-form * {
  box-sizing: border-box;
}

.r-form-field {
  display: grid;
  gap: 8px;
}

.r-form-label,
.r-form-field > span {
  display: block;
  min-width: 0;
  color: rgba(31, 37, 48, 0.48);
  font-family: var(--r-site-font-body);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.r-form-field :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
  appearance: none;
  -webkit-appearance: none;
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(31, 37, 48, 0.14);
  border-radius: 15px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.50)),
    rgba(255, 255, 255, 0.44);
  color: var(--r-site-ink);
  padding: 13px 15px;
  font: 500 15px/1.45 var(--r-site-font-body);
  outline: 0;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.80),
    inset 0 -1px 0 rgba(31, 37, 48, 0.07);
  backdrop-filter: blur(14px) saturate(135%);
  -webkit-backdrop-filter: blur(14px) saturate(135%);
}

.r-form-field :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus,
.r-form-field :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus-visible {
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 0 0 3px rgba(193, 165, 122, 0.14);
}

.r-form-field textarea {
  resize: vertical;
}

.r-form-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: rgba(31, 37, 48, 0.68);
  font-family: var(--r-site-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0;
}

.r-form-check input {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin-top: 1px;
  accent-color: var(--r-color-gold, #c1a57a);
}

.r-form-check a {
  color: #b57f2d;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.r-form-hidden {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.r-form-status {
  min-height: 20px;
  color: #b57f2d;
  font-family: var(--r-site-font-body);
  font-size: 14px;
  line-height: 1.4;
}

.r-form-status.is-error {
  color: #8d2f2f;
}
