/* Блоки v3 над подвалом на страницах Битрикса: «Ранее вы смотрели» (.v3-viewed) и «Нужна консультация?» (.v3-consult).
   Разметка: /include/blocks/v3/viewed.php, consult.php; скрипт: blocks.js. Токены — те же, что у шапки/подвала v3
   (assets/v3/header-bitrix.css) и лендингов серий (catalog.lines.1/style.css). Всё под префиксом .v3-block. */
.v3-block{
  --coal:#221812;--cream:#FAF3E6;--paper:#FFFCF4;--sand:#F0E4CB;--sand-deep:#E4D4B2;--ink:#2A2018;--ink-soft:#5C5044;
  --terra:#A8431F;--terra-hot:#8F3617;--terra-text:#9C3A18;--ember:#E97B4A;--line:#E2D4B8;
  --radius:22px;--radius-s:14px;--shadow:0 14px 34px -18px rgba(64,42,22,.35);
  --font:"Golos Text",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--serif:"Piazzolla",Georgia,"Times New Roman",serif;
  font-family:var(--font);font-size:16px;line-height:1.6;color:var(--ink);
  -webkit-font-smoothing:antialiased;text-transform:none;letter-spacing:normal;box-sizing:border-box;
  width:100%;flex:none; /* body — flex-колонка (header-bitrix.css) */
}
.v3-block *,.v3-block *::before,.v3-block *::after{box-sizing:border-box}
.v3-block h2,.v3-block p,.v3-block ul{margin:0;padding:0}
.v3-block ul,.v3-block li{list-style:none;margin:0;padding:0}
.v3-block li::before,.v3-block li::after{content:none;display:none}
.v3-block a{color:inherit;transition:none}
.v3-block a:hover,.v3-block a:focus{text-decoration:none}
.v3-block :focus-visible{outline:3px solid var(--terra);outline-offset:3px;border-radius:4px}
.v3-block [hidden]{display:none!important}
.v3-wrap{width:min(1180px,92vw);margin-inline:auto}
.v3-icon{width:1.2em;height:1.2em;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.28em}

/* кнопки */
.v3-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.95em 1.6em;border-radius:999px;border:0;
  font:inherit;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none!important;text-align:center;cursor:pointer;
  text-transform:none;letter-spacing:normal;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}
.v3-btn--fire{background:var(--terra);color:#FFF6E9!important;box-shadow:0 12px 26px -12px rgba(168,67,31,.55)}
.v3-btn--fire:hover,.v3-btn--fire:focus{background:var(--terra-hot);color:#FFF6E9!important;transform:translateY(-2px)}
.v3-btn--fire[disabled]{opacity:.65;cursor:progress;transform:none}
.v3-btn--ghost{background:transparent;color:var(--ink)!important;box-shadow:inset 0 0 0 2px var(--sand-deep)}
.v3-btn--ghost:hover,.v3-btn--ghost:focus{background:rgba(255,252,244,.7);box-shadow:inset 0 0 0 2px var(--terra);color:var(--terra-text)!important;transform:translateY(-2px)}

/* ---------- Ранее вы смотрели ---------- */
.v3-viewed{background:var(--cream);padding-block:2.75rem 2.5rem;border-top:1px solid var(--line)}
.v3-viewed__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}
.v3-viewed__title{font-family:var(--font);font-weight:700;font-size:clamp(1.35rem,1.1rem + 1.2vw,1.8rem);line-height:1.2;letter-spacing:-.01em;color:var(--ink)}
.v3-viewed__all{font-size:.95rem;font-weight:600;color:var(--terra-text);white-space:nowrap}
.v3-viewed__all:hover{color:var(--terra-hot);text-decoration:underline}
.v3-viewed__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem}
.v3-viewed__item{min-width:0}
.v3-viewed__card{display:flex;flex-direction:column;height:100%;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-s);
  overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .18s ease,box-shadow .18s ease}
.v3-viewed__card:hover,.v3-viewed__card:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}
.v3-viewed__img{display:block;aspect-ratio:4/3;width:100%;background:var(--sand);overflow:hidden;margin:0}
.v3-viewed__img img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%;max-width:100%}
.v3-viewed__body{display:flex;flex-direction:column;gap:.35rem;padding:.85rem .95rem 1rem}
.v3-viewed__name{font-size:.95rem;font-weight:600;line-height:1.35;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v3-viewed__price{margin-top:auto;font-size:1.05rem;font-weight:700;color:var(--terra-text);white-space:nowrap}
.v3-viewed__price--none{color:var(--ink-soft);font-weight:500;font-size:.9rem}
@media (max-width:767px){
  .v3-viewed{padding-block:2.1rem 2rem}
  .v3-viewed__list{display:flex;overflow-x:auto;gap:.8rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    padding-bottom:.35rem;scrollbar-width:none;overscroll-behavior-x:contain}
  .v3-viewed__list::-webkit-scrollbar{display:none}
  .v3-viewed__item{flex:0 0 min(68%,260px);scroll-snap-align:start}
}

/* ---------- Нужна консультация? ---------- */
.v3-consult{position:relative;background:var(--sand);padding-block:3.25rem 3.5rem;
  background-image:radial-gradient(60% 80% at 100% 0%,rgba(233,123,74,.16),transparent 60%),radial-gradient(45% 60% at 0% 100%,rgba(255,252,244,.7),transparent 65%)}
.v3-consult__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"intro form" "alt form";
  column-gap:clamp(1.5rem,4vw,4rem);row-gap:1.5rem;align-items:start}
.v3-consult__intro{grid-area:intro}
.v3-consult__alt{grid-area:alt}
.v3-consult__form{grid-area:form}
.v3-consult__kicker{display:inline-flex;align-items:center;gap:.45em;font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--terra-text);margin-bottom:.9rem}
.v3-consult__title{font-family:var(--font);font-weight:800;font-size:clamp(1.85rem,1.3rem + 2.2vw,2.75rem);line-height:1.08;letter-spacing:-.02em;color:var(--ink);margin-bottom:.9rem}
.v3-consult__sub{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,1rem + .5vw,1.35rem);line-height:1.45;color:var(--ink-soft);max-width:30ch}
.v3-consult__alt-label{font-size:.9rem;color:var(--ink-soft);margin-bottom:.6rem}
.v3-consult__alt-btns{display:flex;flex-wrap:wrap;gap:.6rem}
.v3-consult__form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.25rem,1rem + 1.5vw,2rem);box-shadow:var(--shadow)}
.v3-consult__hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.v3-consult__fields{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:.9rem}
.v3-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}
.v3-field__label{font-size:.85rem;font-weight:600;color:var(--ink-soft)}
.v3-field__input{width:100%;height:3.1rem;padding:0 1rem;border:1.5px solid var(--sand-deep);border-radius:12px;background:#fff;
  font:inherit;font-size:1rem;color:var(--ink);outline:0;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;appearance:none;margin:0}
.v3-field__input::placeholder{color:#A69682}
.v3-field__input:focus{border-color:var(--terra);box-shadow:0 0 0 3px rgba(168,67,31,.16)}
.v3-field.is-error .v3-field__input{border-color:#B3261E;box-shadow:0 0 0 3px rgba(179,38,30,.14)}
.v3-check{display:flex;align-items:flex-start;gap:.6rem;font-size:.85rem;line-height:1.45;color:var(--ink-soft);cursor:pointer;margin-bottom:1.1rem}
.v3-check input{flex:none;width:1.15rem;height:1.15rem;margin:.15rem 0 0;accent-color:var(--terra);cursor:pointer}
.v3-check a{color:var(--terra-text);text-decoration:underline;text-underline-offset:2px}
.v3-check a:hover{color:var(--terra-hot);text-decoration:underline}
.v3-check.is-error{color:#B3261E}
.v3-consult__actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.1rem}
.v3-consult__actions .v3-btn{white-space:nowrap}
.v3-consult__note{font-size:.82rem;line-height:1.4;color:var(--ink-soft);flex:1 1 12rem}
.v3-consult__msg{margin-top:.9rem;padding:.7rem .9rem;border-radius:10px;font-size:.92rem;line-height:1.45;background:#FBE9E7;color:#8C1D18}
.v3-consult__msg.is-ok{background:#E8F0DC;color:#3E4A22}
.v3-consult__done{display:flex;flex-direction:column;gap:.5rem;padding:.5rem 0;text-align:left}
.v3-consult__done-title{font-weight:700;font-size:1.25rem;color:var(--ink)}
.v3-consult__done-text{color:var(--ink-soft)}
@media (max-width:900px){
  .v3-consult__grid{grid-template-columns:1fr;grid-template-areas:"intro" "form" "alt";row-gap:1.4rem}
  .v3-consult__sub{max-width:none}
}
@media (max-width:640px){
  .v3-consult{padding-block:2.5rem 2.75rem}
  .v3-consult__fields{grid-template-columns:1fr}
  .v3-consult__actions .v3-btn{width:100%}
  .v3-consult__alt-btns .v3-btn{flex:1 1 100%}
}
