/* Родные Травы · формы заявок (обратная связь, консультация) и модальное окно «Поможем подобрать» (кнопки с data-request). */

.cform input, .cform textarea { font: inherit; font-size: 17px; padding: 14px 16px; border: 1px solid var(--line-2); border-radius: var(--r); background: var(--white); color: var(--ink); width: 100%; transition: border-color .2s, box-shadow .2s; }
.cform input:focus, .cform textarea:focus { outline: none; border-color: var(--olive); box-shadow: 0 0 0 3px rgba(78,110,31,.15); }
.cform { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; max-width: 820px; }
.cform label { display: grid; gap: 6px; font-size: 14px; color: var(--ink-3); }
@media (max-width: 720px) {
  .cform { grid-template-columns: 1fr; }
}
.cform__full { grid-column: 1 / -1; }
.cform__full small { display: block; margin-top: 10px; font-size: 13.5px; color: var(--ink-3); max-width: 60ch; }

.request-wrap { position: fixed; inset: 0; z-index: 130; display: grid; place-items: center; padding: 20px; }
.request-bg { position: absolute; inset: 0; background: rgba(30,42,28,.45); backdrop-filter: blur(3px); opacity: 0; transition: opacity .3s; }
.request { position: relative; width: min(560px, 100%); max-height: calc(100vh - 40px); overflow: auto; background: var(--white); border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); padding: clamp(24px, 4vw, 40px); transform: translateY(16px); opacity: 0; transition: transform .35s cubic-bezier(.2,.7,.2,1), opacity .3s; }
.request-wrap.on .request-bg { opacity: 1; }
.request-wrap.on .request { transform: none; opacity: 1; }
.request h2 { font-size: clamp(26px, 3vw, 34px); margin-bottom: 10px; }
.request > p { color: var(--ink-2); margin-bottom: 20px; }
.request__close { position: absolute; top: 14px; right: 14px; width: 44px; height: 44px; }
.request .cform { grid-template-columns: 1fr; }
.request .cform input, .request .cform textarea { font: inherit; font-size: 17px; padding: 14px 16px; border: 1px solid var(--line-2); border-radius: var(--r); background: var(--paper); color: var(--ink); width: 100%; }
.request .cform input:focus, .request .cform textarea:focus { outline: none; border-color: var(--olive); background: var(--white); }
.field-err { border-color: #b3452a !important; }
button[disabled] { opacity: .6; cursor: progress; }
