.rgsc {
  --rgsc-ink: #11100e;
  --rgsc-paper: #f7f4ed;
  --rgsc-white: #fff;
  --rgsc-muted: #6e6a62;
  --rgsc-line: #d8d2c7;
  --rgsc-accent: #ef4b23;
  --rgsc-yellow: #f4bf31;
  width: 100%;
  padding: clamp(24px, 4vw, 48px);
  color: var(--rgsc-ink);
  background: var(--rgsc-white);
  border: 1px solid rgba(17, 16, 14, .1);
  border-radius: 6px;
  box-shadow: 0 24px 70px rgba(17, 16, 14, .1);
}

.contact-form-wrap .rgsc,
.contact-page__form .rgsc {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.rgsc__form { display: grid; gap: 22px; }
.rgsc__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.rgsc__field { display: grid; gap: 8px; }

.rgsc__field label {
  color: var(--rgsc-ink);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
}

.rgsc__field label span { color: var(--rgsc-accent); }
.rgsc__field label small { margin-left: 4px; color: var(--rgsc-muted); font-size: 9px; font-weight: 650; }

.rgsc .rgsc__field input,
.rgsc .rgsc__field textarea,
.rgsc .rgsc__field select {
  width: 100% !important;
  max-width: none !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 13px 15px !important;
  color: var(--rgsc-ink) !important;
  background-color: var(--rgsc-paper) !important;
  border: 1px solid var(--rgsc-line) !important;
  border-radius: 3px !important;
  outline: none !important;
  box-shadow: none !important;
  font: inherit !important;
  line-height: 1.4 !important;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease !important;
}

.rgsc .rgsc__field textarea {
  height: 158px !important;
  min-height: 158px !important;
  max-height: 340px !important;
  resize: vertical !important;
}

.rgsc .rgsc__field select { appearance: auto; }

.rgsc .rgsc__field input:focus,
.rgsc .rgsc__field textarea:focus,
.rgsc .rgsc__field select:focus {
  background-color: var(--rgsc-white) !important;
  border-color: var(--rgsc-ink) !important;
  box-shadow: 0 0 0 3px rgba(244, 191, 49, .28) !important;
}

.rgsc__hint,
.rgsc__privacy { margin: 0; color: var(--rgsc-muted); font-size: 11px; line-height: 1.55; }

.rgsc__submit {
  width: 100%;
  min-height: 57px;
  padding: 14px 19px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: #fff;
  background: var(--rgsc-ink);
  border: 1px solid var(--rgsc-ink);
  border-radius: 3px;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, opacity .2s ease;
}

.rgsc__submit:hover,
.rgsc__submit:focus-visible { color: var(--rgsc-ink); background: var(--rgsc-yellow); transform: translateY(-2px); }
.rgsc__submit:disabled { opacity: .7; cursor: wait; transform: none; }
.rgsc__submit span { font-size: 18px; }

.rgsc__notice {
  margin: 0 0 25px;
  padding: 16px 18px;
  color: var(--rgsc-ink);
  border-left: 4px solid;
  background: var(--rgsc-paper);
  font-size: 14px;
  line-height: 1.55;
}

.rgsc__notice--success { border-color: #12853b; }
.rgsc__notice--error { border-color: var(--rgsc-accent); }
.rgsc__turnstile { min-height: 65px; }

.rgsc__hp {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@media (max-width: 600px) {
  .rgsc { padding: 24px 18px; }
  .rgsc__grid { grid-template-columns: 1fr; }
  .rgsc .rgsc__field textarea { height: 140px !important; min-height: 140px !important; }
}
