/* «Обратная связь» — Figma `2318:2583`, 1729×569.
   Слева текст (лид под заголовком, а не справа, как в других секциях),
   справа карточка формы 843×572 с оранжевой обводкой. */

.feedback {
  position: relative;
  width: 108.0625rem; /* 1729 */
  height: 35.5625rem; /* 569 */
  padding-inline: 0;
}

.feedback__text {
  position: absolute;
  left: 6rem; /* 96 */
  top: 4.8125rem; /* 77 */
  width: 41.5625rem; /* 665 */
}

.feedback__text .section__rule {
  width: 9.8125rem; /* 157 */
}

.feedback__text .section__lead {
  margin-top: 4rem; /* 317 − 125 − 128 */
  width: 36.8125rem; /* 589 */
}

.feedback__card {
  position: absolute;
  left: 49.3125rem; /* 789 */
  top: -0.0625rem; /* −1 */
  width: 52.6875rem; /* 843 */
  height: 35.75rem; /* 572 */
  border: 1px solid var(--c-accent);
  border-radius: var(--r-lg);
  background: var(--c-surface-alt);
}

.feedback__form {
  display: grid;
  grid-template-columns: 20.9375rem 20.9375rem; /* 335 + 335 */
  gap: 1.25rem; /* 20 */
  padding: 3.9375rem 4.75rem 0; /* 63 сверху, 76 по бокам */
}

.feedback__field--full {
  grid-column: span 2;
}

/* Рамка живёт на обёртке поля: внутри неё сверху мелкая подпись, снизу ввод.
   У коротких полей (Имя, Email) подписи нет — только плейсхолдер. */
.feedback__field {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--c-text);
  border-radius: var(--r-sm); /* 12 */
  background: var(--c-surface);
  padding: 0.625rem 0.75rem; /* 10 / 12 */
  height: 3.5rem; /* 56 */
}

.feedback__field--plain {
  justify-content: center;
  padding-block: 1.125rem; /* 18 */
}

.feedback__field--textarea {
  height: 10rem; /* 160 */
  padding-bottom: 0.75rem; /* 12 */
}

.feedback__label {
  font-size: 0.875rem; /* 14 */
  line-height: 1.125rem;
  color: var(--c-text-muted);
}

.feedback__input,
.feedback__textarea {
  display: block;
  width: 100%;
  flex: 1;
  min-height: 0;
  border: 0;
  padding: 0;
  background: transparent;
  font-family: var(--f-text);
  font-size: 1.25rem; /* 20 */
  line-height: 1.5rem;
  color: var(--c-text);
}

.feedback__input:focus,
.feedback__textarea:focus {
  outline: none;
}

.feedback__field:focus-within {
  outline: 2px solid var(--c-brand);
  outline-offset: 1px;
}

.feedback__textarea {
  resize: none;
}

.feedback__input::placeholder,
.feedback__textarea::placeholder {
  color: var(--c-text-secondary);
}

.feedback__consent {
  grid-column: span 2;
  display: flex;
  align-items: center;
  gap: 0.75rem; /* 12 */
  margin-top: 0.25rem; /* 395 − 375 − 16 */
  padding-left: 0.75rem; /* 877 − 865 */
  font-size: 1.25rem;
  line-height: 1.5rem;
  color: var(--c-text);
}

.feedback__checkbox {
  width: 1.5rem; /* 24 */
  height: 1.5rem;
  flex-shrink: 0;
  accent-color: var(--c-brand);
  cursor: pointer;
}

.feedback__submit {
  grid-column: span 2;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem; /* 8 */
  width: 20.9375rem; /* 335 */
  height: 3.5rem; /* 56 */
  margin-top: 2rem; /* 451 − 395 − 24 */
  padding-inline: 2rem; /* 32 */
  border: 0;
  border-radius: var(--r-hero); /* 80 */
  background: var(--c-accent);
  color: var(--c-on-dark);
  font-family: var(--f-text);
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.5rem;
  cursor: pointer;
  transition: background-color 0.18s ease;
}

.feedback__submit:hover {
  background: #c8532e;
}

/* Штриховой пёс в правом нижнем углу карточки */
.feedback__dog {
  position: absolute;
  left: 40.4375rem; /* 1436 − 789 */
  top: 24.6875rem; /* 395 */
  width: 7.6875rem; /* 123 */
  height: 9.875rem; /* 158 */
}

.feedback__status {
  grid-column: span 2;
  margin-top: 0.75rem;
  font-size: 1.125rem;
  line-height: 1.5rem;
  color: var(--c-brand);
}

/* --- Адаптив: макета нет, раскладка спроектирована здесь --- */
@media (max-width: 1199px) {
  .feedback {
    position: static;
    width: auto;
    height: auto;
    padding-inline: 2rem;
  }

  .feedback__text {
    position: static;
    width: auto;
  }

  .feedback__text .section__lead {
    margin-top: 1.5rem;
    width: auto;
  }

  .feedback__card {
    position: static;
    width: auto;
    height: auto;
    margin-top: 2.5rem;
  }

  .feedback__form {
    grid-template-columns: 1fr;
    padding: 1.5rem;
  }

  .feedback__field--full,
  .feedback__consent,
  .feedback__submit,
  .feedback__status {
    grid-column: span 1;
  }

  .feedback__submit {
    width: 100%;
    margin-top: 1rem;
  }

  .feedback__consent {
    align-items: flex-start;
    font-size: 1rem;
    line-height: 1.4;
    padding-left: 0;
  }

  .feedback__dog {
    display: none;
  }
}
