

/* Start:/bitrix/templates/pravzhizn/components/b2/shop.opt-form/default/style.css?179196628615272*/
/* ============================================================
   shop.opt-form - форма оптовой заявки /opt/form/
   Разметка по макету opt-form_v1.1.html. Токены --pz-*.
   ============================================================ */

/* Базовая типографика - без неё наследуется легаси-шрифт шаблона. */
.pz-optform {
  font-family: var(--pz-font-sans);
  font-size: 16px;
  line-height: 1.6;
  color: var(--pz-text);
  -webkit-font-smoothing: antialiased;
}
.pz-optform h1, .pz-optform h2, .pz-optform h3 { font-family: var(--pz-font-sans); }
.pz-optform p, .pz-optform label, .pz-optform span, .pz-optform a, .pz-optform input,
.pz-optform select, .pz-optform textarea, .pz-optform button { font-family: inherit; }

/* ---- Сетка: сайт 1600/140, мобиль 20px ---- */
.pz-optform__topbar-in,
.pz-optform-hero__in,
.pz-optform-layout {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1260px) {
  .pz-optform__topbar-in  { max-width: 1600px; padding-left: 140px; padding-right: 140px; }
  .pz-optform-hero__in    { max-width: 1600px; padding: 36px 140px 24px; }
  .pz-optform-layout      { max-width: 1600px; padding: 36px 140px 80px; }
}
@media (max-width: 1259px) {
  .pz-optform__topbar-in  { max-width: none; padding-left: 20px; padding-right: 20px; }
  .pz-optform-hero__in    { max-width: none; padding: 22px 20px 16px; }
  .pz-optform-layout      { max-width: none; padding: 20px 20px 60px; gap: 20px; }
}

/* ---- B2B topbar ---- */
.pz-optform__topbar {
  background: var(--pz-surface-2);
  border-bottom: 1px solid var(--pz-divider);
}
.pz-optform__topbar-in {
  padding-top: 9px; padding-bottom: 9px;
  display: flex; align-items: center; justify-content: space-between;
}
.pz-optform__back {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; color: var(--pz-text-2); font-weight: 500; text-decoration: none;
}
.pz-optform__back svg { width: 14px; height: 14px; }
.pz-optform__back:hover { color: var(--pz-primary); text-decoration: none; }
.pz-optform__topbar-right { display: flex; align-items: center; gap: 18px; }
.pz-optform__topbar-phone {
  font-size: 14px; font-weight: 700; color: var(--pz-text); text-decoration: none;
}
.pz-optform__topbar-phone:hover { color: var(--pz-primary); text-decoration: none; }

/* ---- Hero ---- */
.pz-optform-hero {
  padding: 0;
  border-bottom: 1px solid var(--pz-divider);
}
.pz-optform-hero h1 {
  font-size: 30px; font-weight: 900; color: var(--pz-text);
  margin: 0 0 8px; line-height: 1.2;
}
.pz-optform-hero__sub {
  font-size: 16px; color: var(--pz-text-2); margin: 0;
  max-width: 560px;
}

/* Progress steps */
.pz-progress-steps {
  display: flex; align-items: center; gap: 0;
  margin-top: 22px; list-style: none; padding: 0 0 24px;
}
.pz-progress-steps__item {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; font-weight: 500; color: var(--pz-text-3);
}
.pz-progress-steps__item.is-active { color: var(--pz-primary); }
.pz-progress-steps__item.is-done   { color: var(--pz-success); }
.pz-progress-steps__dot {
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--pz-surface-3); border: 2px solid var(--pz-divider);
  display: flex; align-items: center; justify-content: center;
  font-size: 10px; font-weight: 800; color: var(--pz-text-3);
  flex-shrink: 0; transition: all .2s;
}
.pz-progress-steps__item.is-active .pz-progress-steps__dot {
  background: var(--pz-primary); border-color: var(--pz-primary); color: #fff;
}
.pz-progress-steps__item.is-done .pz-progress-steps__dot {
  background: var(--pz-success); border-color: var(--pz-success); color: #fff;
}
.pz-progress-steps__sep {
  width: 36px; height: 1px; background: var(--pz-divider);
  flex-shrink: 0; margin: 0 8px;
}

/* ---- Main 2-column layout ---- */
.pz-optform-layout {
  display: grid; grid-template-columns: 1fr 360px; gap: 36px;
  align-items: start;
}

/* ---- Form card ---- */
.pz-optform-card {
  background: var(--pz-surface);
  border: 1px solid var(--pz-divider);
  border-radius: var(--pz-r-xl);
  padding: 36px;
}

.pz-section-label {
  font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: var(--pz-text-3);
  margin: 0 0 16px;
}
.pz-section-label + * { margin-top: 0; }
.pz-optform-divider { height: 1px; background: var(--pz-divider); margin: 28px 0; }

/* ---- Org type pill-radio ---- */
.pz-org-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.pz-org-pills label { cursor: pointer; }
.pz-org-pills input[type="radio"] { display: none; }
.pz-org-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: var(--pz-r-pill);
  border: 1.5px solid var(--pz-divider);
  font-size: 14px; font-weight: 600; color: var(--pz-text-2);
  background: var(--pz-surface);
  transition: border-color .15s, background .15s, color .15s;
  user-select: none;
}
.pz-org-pill svg { width: 15px; height: 15px; flex-shrink: 0; opacity: .45; transition: opacity .15s; }
.pz-org-pills input[type="radio"]:checked + .pz-org-pill {
  border-color: var(--pz-primary);
  background: var(--pz-primary-soft);
  color: var(--pz-primary);
}
.pz-org-pills input[type="radio"]:checked + .pz-org-pill svg { opacity: 1; }
.pz-org-pill:hover { border-color: var(--pz-primary); color: var(--pz-primary); }

/* ---- Field groups ---- */
.pz-fgroup { margin-bottom: 16px; }
.pz-fgroup:last-child { margin-bottom: 0; }
.pz-fgroup--row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.pz-flabel {
  display: block; font-size: 13px; font-weight: 700;
  color: var(--pz-text-2); margin-bottom: 6px;
}
.pz-flabel .req { color: var(--pz-primary); margin-left: 2px; }
.pz-flabel .opt { color: var(--pz-text-3); font-weight: 400; font-size: 12px; margin-left: 4px; }

.pz-input-wrap { position: relative; }
.pz-input {
  width: 100%; box-sizing: border-box;
  padding: 11px 14px; padding-right: 42px;
  border: 1.5px solid var(--pz-divider);
  border-radius: var(--pz-r); background: var(--pz-surface);
  font-size: 15px; color: var(--pz-text);
  transition: border-color .15s, box-shadow .15s;
  outline: none; appearance: none;
}
.pz-input::placeholder { color: var(--pz-text-4); }
.pz-input:focus { border-color: var(--pz-primary); box-shadow: 0 0 0 3px var(--pz-primary-soft); }
.pz-input.is-ok   { border-color: var(--pz-success); }
.pz-input.is-ok:focus { box-shadow: 0 0 0 3px var(--pz-success-soft); }
.pz-input.is-err  { border-color: var(--pz-error); }
.pz-input.is-err:focus { box-shadow: 0 0 0 3px var(--pz-error-soft); }
.pz-input:disabled,
.pz-input[readonly] { background: var(--pz-surface-2); color: var(--pz-text-2); cursor: default; }

/* Модификаторы полей без иконки справа */
.pz-input--select { padding-right: 14px; }
.pz-input--area   { resize: vertical; padding-right: 14px; }

/* Field icon */
.pz-input-icon {
  position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  display: none;
}
.pz-input-icon svg { width: 18px; height: 18px; color: var(--pz-text-3); }
.pz-input-icon--spin { animation: pz-spin .7s linear infinite; }
.pz-input-icon--ok  svg { color: var(--pz-success); }
.pz-input-icon--err svg { color: var(--pz-error); }
@keyframes pz-spin { to { transform: rotate(360deg); } }

/* Field hint/error */
.pz-field-hint { font-size: 12px; color: var(--pz-text-3); margin-top: 5px; }
.pz-field-err  { font-size: 12px; color: var(--pz-error); margin-top: 5px; display: none; }
.pz-field-err.is-visible { display: block; }

/* ---- Inline banners ---- */
.pz-inline-banner {
  display: none; border-radius: var(--pz-r); padding: 12px 16px;
  margin-bottom: 20px; font-size: 13px;
  align-items: flex-start; gap: 10px;
}
.pz-inline-banner.is-visible { display: flex; }
.pz-inline-banner svg { width: 16px; height: 16px; flex-shrink: 0; margin-top: 1px; }

.pz-inline-banner--autofill {
  background: var(--pz-success-soft); border: 1px solid #C3DFC9; color: #27613C;
}
.pz-inline-banner--dup {
  background: var(--pz-primary-soft); border: 1.5px solid var(--pz-primary-soft-2);
  flex-direction: column; gap: 4px;
}
.pz-inline-banner--dup .pz-banner-title {
  font-size: 15px; font-weight: 800; color: var(--pz-primary); margin: 0 0 4px;
}
.pz-inline-banner--dup .pz-banner-body { color: var(--pz-text-2); margin: 0 0 10px; font-size: 13px; }
.pz-inline-banner--dup .pz-btn { align-self: flex-start; font-size: 13px; padding: 8px 16px; }
.pz-inline-banner--prefill {
  background: var(--pz-info-soft); border: 1px solid #C5D4DE; color: var(--pz-info);
}

/* ---- 152-ФЗ consent ---- */
.pz-consent-row {
  display: flex; align-items: flex-start; gap: 10px;
  margin-top: 8px; cursor: pointer;
}
.pz-consent-row input[type="checkbox"] {
  width: 18px; height: 18px; flex-shrink: 0; margin-top: 1px;
  accent-color: var(--pz-primary); cursor: pointer;
}
.pz-consent-text { font-size: 13px; color: var(--pz-text-2); line-height: 1.55; }
.pz-consent-text a { color: var(--pz-primary); }
.pz-consent-err {
  font-size: 12px; color: var(--pz-error); margin-top: 5px; display: none;
}
.pz-consent-err.is-visible { display: block; }

/* ---- Submit button ---- */
.pz-optform-submit {
  width: 100%; margin-top: 24px; padding: 15px 24px;
  border: none; border-radius: var(--pz-r);
  background: var(--pz-primary); color: var(--pz-on-primary);
  font-size: 16px; font-weight: 800;
  cursor: pointer; transition: background .15s, transform .08s;
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.pz-optform-submit:hover:not(:disabled) { background: var(--pz-primary-hover); }
.pz-optform-submit:active:not(:disabled) { transform: scale(.99); }
.pz-optform-submit:disabled { background: var(--pz-text-4); cursor: not-allowed; }
.pz-optform-submit svg { width: 18px; height: 18px; }
/* Глобальный a:hover шаблона красит текст кнопки в зелёный - перебиваем. */
.pz-optform .pz-optform-submit:hover { color: var(--pz-on-primary); }

.pz-submit-spinner { display: none; }
.pz-optform-submit.is-loading .pz-submit-spinner { display: flex; animation: pz-spin .7s linear infinite; }
.pz-optform-submit.is-loading .pz-submit-text { display: none; }

.pz-submit-note {
  font-size: 12px; color: var(--pz-text-3); text-align: center;
  margin-top: 10px; line-height: 1.5;
}
.pz-submit-note a { color: var(--pz-primary); }

/* ---- Success screen ---- */
.pz-optform-success { display: none; text-align: center; padding: 40px 20px 16px; }
.pz-success-icon {
  width: 64px; height: 64px; border-radius: 50%;
  background: var(--pz-success-soft); margin: 0 auto 20px;
  display: flex; align-items: center; justify-content: center;
}
.pz-success-icon svg { width: 30px; height: 30px; color: var(--pz-success); }
.pz-optform-success h2 { font-size: 24px; font-weight: 900; color: var(--pz-text); margin: 0 0 10px; }
.pz-optform-success > p { font-size: 15px; color: var(--pz-text-2); margin: 0 0 24px; }

.pz-success-next {
  text-align: left; background: var(--pz-surface-2);
  border-radius: var(--pz-r-lg); padding: 20px;
}
.pz-success-next__title {
  font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase;
  color: var(--pz-text-3); margin: 0 0 14px;
}
.pz-success-step {
  display: flex; align-items: flex-start; gap: 12px;
  margin-bottom: 12px; font-size: 14px; color: var(--pz-text-2);
}
.pz-success-step:last-child { margin-bottom: 0; }
.pz-success-step__num {
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--pz-primary); color: #fff;
  font-size: 10px; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; margin-top: 1px;
}

/* Toggle form/success */
.pz-form-body.is-submitted   { display: none; }
.pz-optform-success.is-submitted { display: block; }

/* ---- Sidebar ---- */
.pz-trust-sidebar {
  position: sticky; top: 90px;
  display: flex; flex-direction: column; gap: 20px;
}

.pz-sidebar-card {
  background: var(--pz-surface);
  border: 1px solid var(--pz-divider);
  border-radius: var(--pz-r-xl); overflow: hidden;
}
.pz-sidebar-card__head {
  background: var(--pz-surface-2); padding: 18px 22px;
  border-bottom: 1px solid var(--pz-divider);
}
.pz-sidebar-card__head h3 { font-size: 15px; font-weight: 800; color: var(--pz-text); margin: 0 0 3px; }
.pz-sidebar-card__head p  { font-size: 13px; color: var(--pz-text-2); margin: 0; }
.pz-sidebar-card__body { padding: 18px 22px; }

/* Trust items */
.pz-trust-item {
  display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px;
}
.pz-trust-item:last-child { margin-bottom: 0; }
.pz-trust-item__ic {
  width: 34px; height: 34px; border-radius: var(--pz-r-sm);
  background: var(--pz-primary-soft); flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
}
.pz-trust-item__ic svg { width: 17px; height: 17px; color: var(--pz-primary); }
.pz-trust-item__t { font-size: 13.5px; font-weight: 700; color: var(--pz-text); }
.pz-trust-item__d { font-size: 12.5px; color: var(--pz-text-2); margin-top: 2px; line-height: 1.45; }

/* Manager card */
.pz-manager-row { display: flex; align-items: center; gap: 14px; }
.pz-manager-avatar {
  width: 52px; height: 52px; border-radius: 50%;
  background: var(--pz-surface-3); flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.pz-manager-avatar svg { width: 22px; height: 22px; color: var(--pz-text-3); }
.pz-manager-name { font-size: 15px; font-weight: 800; color: var(--pz-text); }
.pz-manager-role { font-size: 12px; color: var(--pz-text-3); margin-top: 2px; }

.pz-manager-btns { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.pz-manager-btns a {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px; border-radius: var(--pz-r);
  border: 1.5px solid var(--pz-divider);
  font-size: 13.5px; font-weight: 700; color: var(--pz-text);
  transition: all .15s; text-decoration: none;
}
.pz-manager-btns a:hover { text-decoration: none; }
.pz-manager-btns a svg { width: 19px; height: 19px; }
.pz-manager-btns a.btn-tg { background: #EEF6FE; border-color: #C8DEFA; color: #1A62B2; }
.pz-manager-btns a.btn-tg:hover { background: #DDF0FF; color: #1A62B2; }
.pz-manager-btns a.btn-wa { background: #EDFBF2; border-color: #BDE8CE; color: #1B7840; }
.pz-manager-btns a.btn-wa:hover { background: #D7F5E6; color: #1B7840; }
.pz-manager-btns a:not(.btn-tg):not(.btn-wa):hover { color: var(--pz-text); }

.pz-manager-hours {
  margin-top: 12px; padding: 9px 12px;
  border-radius: var(--pz-r); background: var(--pz-surface-2);
  font-size: 12px; color: var(--pz-text-3); line-height: 1.5;
}

/* ---- INN icon states ---- */
#js-inn-icon.is-shown     { display: flex; }
#js-inn-icon.is-spin  svg#js-inn-loader { animation: pz-spin .7s linear infinite; }

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .pz-optform-layout  { grid-template-columns: 1fr; }
  .pz-trust-sidebar   { position: static; }
}
@media (max-width: 640px) {
  .pz-optform-card    { padding: 22px 16px; }
  .pz-fgroup--row     { grid-template-columns: 1fr; }
  .pz-progress-steps  { display: none; }
}

/* End */
/* /bitrix/templates/pravzhizn/components/b2/shop.opt-form/default/style.css?179196628615272 */
