/* Блок обратного звонка — оформление 05.08.2026 (в стилистике новых страниц) */
.form-block.dflex{
  background:linear-gradient(135deg,#0a1628 0%,#152238 45%,#1a2d4a 100%);
  border-radius:20px; padding:34px 40px; margin:28px auto 40px; color:#fff;
  display:flex; align-items:center; justify-content:space-between; gap:32px;
  box-shadow:0 18px 48px rgba(10,22,40,.18); max-width:1000px; box-sizing:border-box;
}
.form-block.dflex .form-info{max-width:46%}
.form-block.dflex .form-title{font-size:1.9rem; font-weight:800; line-height:1.15; margin:0 0 10px; color:#fff}
.form-block.dflex .form-desc{font-size:1.02rem; color:rgba(255,255,255,.88); margin:0 0 6px}
.form-block.dflex .form-info p{font-size:.9rem; color:rgba(255,255,255,.62); margin:0}
.form-block.dflex .form-item{flex:0 0 400px; max-width:400px; box-sizing:border-box}
.form-block.dflex .form-item input[type=tel]{
  width:100%; box-sizing:border-box; height:52px; border-radius:12px; border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10); color:#fff; font-size:1.05rem; padding:0 18px; outline:none;
}
.form-block.dflex .form-item input[type=tel]::placeholder{color:rgba(255,255,255,.55)}
.form-block.dflex .form-item input[type=tel]:focus{border-color:#00b4d8; background:rgba(255,255,255,.16)}
.form-block.dflex .form-item input[type=submit]{
  width:100%; box-sizing:border-box; height:52px; margin-top:12px; border:none; border-radius:12px; cursor:pointer;
  background:linear-gradient(135deg,#ff6b35,#e55a24); color:#fff; font-size:1.02rem; font-weight:700;
  transition:transform .18s ease, box-shadow .18s ease;
}
.form-block.dflex .form-item input[type=submit]:hover{transform:translateY(-2px); box-shadow:0 10px 26px rgba(255,107,53,.34)}
.form-block.dflex .privacy-agree{color:rgba(255,255,255,.72); margin:10px 0 0 !important}
.form-block.dflex .privacy-agree a{color:#7fd8ef}
.form-block.dflex .privacyw{font-size:.76rem; color:rgba(255,255,255,.55); margin-top:8px}
.form-block.dflex .privacyw a{color:#7fd8ef}
.form-block.dflex .form-item__container{display:flex; align-items:center; gap:10px}
.form-block.dflex .form-item__bg img{filter:brightness(0) invert(1); opacity:.8}
@media(max-width:900px){
  .form-block.dflex{flex-direction:column; align-items:stretch; padding:26px 22px; margin:20px 12px 28px; gap:18px}
  .form-block.dflex .form-info{max-width:100%}
  .form-block.dflex .form-title{font-size:1.5rem}
  .form-block.dflex .form-item{flex:1 1 auto; max-width:100%}
}
/* контейнер только со служебной разметкой — без пустой полосы */
.container.content-info.sn-meta-only{padding:0 !important;margin:0 !important;min-height:0 !important}

/* sn-tighten: убираем пустую полосу перед блоком обратного звонка */
.grey-section:has(.catalog-table){padding-bottom:8px}
.grey-section:has(.form-block){padding-top:0}
.form-block.dflex{margin-top:8px}
.catalog-table{margin-bottom:0}

/* sn-polish: доводка блока обратного звонка */
.form-block.dflex, .form-block.dflex *{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.form-block.dflex .form-title{letter-spacing:-.02em}
.form-block.dflex .form-desc{font-weight:600}
.form-block.dflex .privacy-agree label{display:flex !important;align-items:center;gap:8px;text-align:left;line-height:1.35}
.form-block.dflex .privacy-agree input[type=checkbox]{margin:0 !important;width:16px;height:16px;accent-color:#00b4d8;flex:0 0 16px}
.form-block.dflex .privacy-agree span{font-size:.82rem;color:rgba(255,255,255,.78)}
.form-block.dflex .privacy-agree a,
.form-block.dflex .privacyw a{color:#8fe3f7;text-decoration:underline}
.form-block.dflex .privacyw{text-align:left;line-height:1.4}
.form-block.dflex .form-item > input[type=tel]{margin:0}
@media(max-width:900px){
  .form-block.dflex .privacy-agree span{font-size:.8rem}
  .form-block.dflex .form-title{letter-spacing:-.01em}
}
/* sn-polish2: поле и кнопка одной ширины */
.form-block.dflex .form-item{display:flex;flex-direction:column}
.form-block.dflex .form-item > input[type=tel],
.form-block.dflex .form-item__container{width:100% !important;max-width:100% !important;box-sizing:border-box}
.form-block.dflex .form-item input[type=submit]{width:100% !important;max-width:100% !important}
.form-block.dflex .form-item__container input[type=tel]{flex:1 1 auto}
/* sn-empty-collapse: пустые контейнеры перед блоком обратного звонка не должны занимать место */
.grey-section .container:empty,
.grey-section .container.content-info:empty,
.content-wrap > .container:empty,
.content-wrap > .container.content-info:empty{padding:0 !important;margin:0 !important;min-height:0 !important;height:0 !important}
.grey-section .container:has(> .wrapper:empty),
.content-wrap > .container:has(> .wrapper:empty){padding:0 !important;margin:0 !important}
/* sn-collapse-js: класс ставится скриптом на пустые контейнеры перед формой */
.sn-collapsed{padding:0 !important;margin:0 !important;min-height:0 !important}

/* контейнер служебной разметки во втором шаблоне: без текста — без отступов */

/* sn-no-white-gap: убираем белую полоску между серыми секциями.
   Внешний отступ формы схлопывался наружу секции и раздвигал секции — переносим его внутрь. */
.form-block.dflex{margin-top:0!important;padding-top:42px!important}

/* sn-tail-collapse: пустые контейнеры после каталога не создают пустоту.
   Условия подобраны так, что при появлении реального содержимого отступы возвращаются. */
#block150:not(:has(p:not(:empty))):not(:has(h2)):not(:has(h3)):not(:has(h4)):not(:has(img)):not(:has(table)):not(:has(li)):not(:has(iframe)):not(:has(form)){padding:0!important;margin:0!important;min-height:0!important}
.container.content-info.sn-maybe-empty:not(:has(p:not(:empty))):not(:has(h2)):not(:has(h3)):not(:has(h4)):not(:has(img)):not(:has(table)):not(:has(li)):not(:has(iframe)):not(:has(form)){padding:0!important;margin:0!important;min-height:0!important}
.container.content-info.sn-meta-only{padding:0!important;margin:0!important;min-height:0!important}

/* sn-tail-tighten: умеренные отступы у контейнера после каталога */
.container.content-info.sn-maybe-empty{padding-bottom:0!important;margin-bottom:16px!important}
