/* Custom CSS */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&display=swap');

blockquote {
	background: none repeat scroll 0 0 #e7e7e7;
	font-size: 1.2rem;
	line-height: 1.45;
	padding: 2rem 3rem 1.5rem;
	position: relative;
	display: inline-block;
	border: 1px solid #d8d8d8;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: rgb(216, 216, 216);
	border-left: 10px solid rgb(216, 216, 216);
	margin: 1.25rem 0;
	width: 100%;
}


.h-flex{
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}
.v-flex{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.login-top{
  display: block;
  padding: 0 .5rem 0 .25rem;
  cursor: pointer;
  text-decoration: none;
}
.login-top::before{
  font-family: 'fontello';
  font-size: 1.75rem;
  content: '\E866';
}

.logout-top{
  text-decoration: none;  
}

.logout-top::before{
  font-family: 'fontello';
  font-size: 1.75rem;
  content: '\E86A';
}

.top-line{
  width: 100%;
}

.top-first-line{
  display: flex;
  width: 100%;
}

.top-first-line .region-nav-branding{
  flex: 1;
}

@media (max-width: 991px) {
  .clock,
  .top-button{
    display: none;
  }
}

@media (max-width: 767px) {
  .top-email{
    display: none;
  }
}

/* Bootstrap 5 Menu Hover */

@media (min-width: 992px) {
  .dropdown:hover > .dropdown-menu {
    display: block;
    margin-top: 0;
  }
}

/* Templates */


.prop-row {
  margin-top: 2rem;
}

.prop-row .prop-col{
  margin-bottom: 2rem;
}
.prop-row .prop-col .prop-block{
  background-color: #fff;
  color: #1c1c1c;
  padding: 2rem 3rem;
  border-radius: .75rem;
  height: 100%;
}

.prop-row .prop-col-1 .prop-block{
  background-color: #040404;
  color: #fff;
}
.prop-row .prop-col-2 .prop-block{
  background-color: #404040;
  color: #fff;
}
.prop-row .prop-col-3 .prop-block{
  background-color: #e3e3e3;
}
.prop-row .prop-col-4 .prop-block{
  background-color: #707070;
  color: #fff;
}
.prop-row .prop-col-5 .prop-block{
  background-color: #efefef;
}
.prop-row .prop-col-6 .prop-block{
  background-color: #d1d1d1;
}

.prop-title{
  font-size: 120%;
}
.prop-row .prop-col .prop-title{
  margin-bottom: 1rem;
}
.prop-description{
  margin-bottom: 1rem;
}

.prop-ol,
.ck-content .prop-ol{
  list-style-type: none;
  counter-reset: ordered;
}

.prop-ol li{
  margin: 1.5rem 1.5rem;
}
.prop-ol li:before{
  color: #a0a0a0;
  content: counter(ordered);
  counter-increment: ordered;
  display: inline-block;
  font-size: 1.75rem;
  margin-left: -3.2rem;
  padding: 0rem;
  position: absolute;
  font-weight: bold;
}

.cta-row{
  border: 1px solid #cecece;
  color: #000;
  margin: 1rem 0;
  overflow: hidden;
}

.cta-row {
  margin: 1rem 0;
  background-image: url(/themes/custom/b5sub/back.jpg);
  position: relative;
  background-size: cover;
}

.curtain {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(240, 240, 240, 0.8);
  position: absolute;
}

.cta-col{
  padding: 2rem 3rem;
  z-index: 1;
}

.cta-col-2{
  text-align: center;
}
.cta-col-2 .cta-wrapper{
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.cta-title{
  font-size: 1.5rem;
  margin-bottom: .5rem;
  font-weight: bold;
}

.cta-col-1 .cta-wrapper{
  padding: 1.5rem 2.25rem;
  border-radius: .75rem;
}
.cta-col-2 .btn{
  font-size: 1.25rem;
}

/* Accordion */

.ckeditor-accordion-container{
  overflow: hidden;
  border: 1px solid #cecece;
  margin: 1rem 0;
}
.ckeditor-accordion-container .styled{
  margin: 0;
}
.ckeditor-accordion-container > dl dd{
  padding: 0;
}
.ckeditor-accordion-container p{
  border-radius: 0;
  margin-bottom: 0;
}
.ckeditor-accordion-container > dl dt > a,
.ckeditor-accordion-container > dl dt > a:not(.button){
  border: 0;
  background: none repeat scroll 0 0 #eee;;
  color: #000;
}
.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::before,
.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::after{
  background: #000;
}
.ckeditor-accordion-container > dl dt.active > a{
  background: none repeat scroll 0 0 #e7e7e7;
  color: #000;
}
.ckeditor-accordion-container > dl dt > a:hover,
.ckeditor-accordion-container > dl dt > a:not(.button):hover{
  background: none repeat scroll 0 0 #d7d7d7;
  color: #000;
}
.ckeditor-accordion-container > dl dd{
  padding: 1.25rem 2.25rem 1.75rem;
}
.ckeditor-accordion-container > dl{
  border: 0;
}



/* Main Icons */

/* ============================================================
   SCHNEL — стили страницы и компонентов
   Палитра: акцент #DD9933 (золото), тёмный #222, светлый #f9f9f9, текст #444.
   ============================================================ */

:root {
  --schnel-gold: #DD9933;
  --schnel-gold-hover: #b87a1f;
  --schnel-dark: #222;
  --schnel-text: #444;
  --schnel-muted: #666;
  --schnel-light: #f9f9f9;

  /* Перебиваем синий цвет ссылок Bootstrap'а на бренд-золотой */
  --bs-link-color: #DD9933;
  --bs-link-color-rgb: 221, 153, 51;
  --bs-link-hover-color: #b87a1f;
  --bs-link-hover-color-rgb: 184, 122, 31;
}

/* Дефолтные ссылки в контенте — золотом */
a, a:link, a:visited { color: var(--schnel-gold); }
a:hover, a:focus { color: var(--schnel-gold-hover); }

/* Заголовки — Rubik */
h1, h2, h3, h4, h5, h6,
.section-title, .section-subtitle, .feature__title, .pillar__title, .vmv-title,
.category-card__title, .counter-number, .counter-suffix {
  font-family: 'Rubik', system-ui, -apple-system, sans-serif;

}

/* Типографика контента нод и страниц — комфортное чтение,
   нормальный отступ между абзацами как на оригинале schnel.co.in. */
main p,
.node .field--name-body p,
.node__content p,
article p {
  margin-top: 0;
  margin-bottom: 1.25rem;
  line-height: 1.75;
  color: var(--schnel-text);
  font-size: 1rem;
}
main ul, main ol,
.node .field--name-body ul, .node .field--name-body ol {
  margin-bottom: 1.25rem;
  line-height: 1.75;
  color: var(--schnel-text);
  font-size: 1rem;
}
main li,
.node .field--name-body li {
  font-size: 1rem;
  line-height: 1.75;
  color: var(--schnel-text);
  margin-bottom: 0.4rem;
}
main h2, main h3, main h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  color: var(--schnel-dark);
}
main h2 { font-size: 1.6rem;}
main h3 { font-size: 1.3rem;}
main h4 { font-size: 1.1rem;}

/* Таблицы в контенте — тот же размер шрифта что у текста, аккуратные границы */
main table,
.node .field--name-body table {
  font-size: 1rem;
  line-height: 1.7;
  color: var(--schnel-text);
  margin-bottom: 1.5rem;
  width: 100%;
  border-collapse: collapse;
}
main table th,
main table td,
.node .field--name-body table th,
.node .field--name-body table td {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: top;
  text-align: left;
}
main table th,
.node .field--name-body table th {
  font-weight: 600;
  color: var(--schnel-dark);
  background: var(--schnel-light);
  border-bottom: 2px solid #ddd;
}

/* =========================================================
   ШАПКА: 2 строки. Верхняя — лого + контакты. Нижняя — золотая полоса с меню.
   ========================================================= */

header[role="banner"] nav { padding: 0; border: 0; }
header[role="banner"] .top-line { width: 100%; }

/* Верхняя строка: белый фон, лого слева, контакты справа */
header[role="banner"] .top-first-line {
  background: #fff;
  padding: 12px 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  border-bottom: 1px solid #f0f0f0;
}

/* Branding-блок в шапке: только лого, ширина по содержимому, не растягивать */
header[role="banner"] .top-first-line .region-nav-branding { flex: 0 0 auto; }
header[role="banner"] .navbar-brand { padding: 0; margin: 0; flex: 0 0 auto; display: inline-block; width: auto; }
header[role="banner"] .top-logo { display: inline-block; width: auto; }
header[role="banner"] .top-logo a { display: inline-block; width: auto; }
header[role="banner"] .top-logo a img { height: 80px; width: auto; max-width: none; display: block; }
header[role="banner"] .clock,
header[role="banner"] .top-callback { display: none; } /* убираем дефолтные плейсхолдеры темы */

/* Контакты в шапке: вынесены в отдельный блок (nav_additional) */
.schnel-header-contacts {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-left: auto;
  flex-wrap: wrap;
}
.schnel-header-contacts .contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--schnel-dark);
  text-decoration: none;
  font-size: 1.05rem;
  font-weight: 500;
}
.schnel-header-contacts .contact-item + .contact-item {
  border-left: 1px solid #e0e0e0;
  padding-left: 30px;
}
.schnel-header-contacts .contact-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--schnel-gold);
  border-radius: 50%;
  color: var(--schnel-gold);
  flex: 0 0 40px;
}
.schnel-header-contacts .contact-icon svg { width: 18px; height: 18px; }
.schnel-header-contacts a.contact-item:hover { color: var(--schnel-gold); }

/* Нижняя строка — золотая полоса. Контент (пункты меню) остаётся в границах
   контейнера. Фон растягивается до краёв экрана через ::before pseudo-element,
   который позиционируется относительно полосы и тянется на 100vw.
   clip-path и box-shadow не используем — они обрезают подменю-dropdown'ы. */
html { overflow-x: clip; }
body { overflow-x: clip; }

header[role="banner"] .top-second-line {
  position: relative;
  background: transparent;
}
header[role="banner"] .top-second-line::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: var(--schnel-gold);
  z-index: 0;
}
header[role="banner"] .top-second-line > * { position: relative; z-index: 1; }
header[role="banner"] .top-second-line .navbar-collapse { padding: 0; }
header[role="banner"] .top-second-line ul.menu,
header[role="banner"] .top-second-line ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
  align-items: stretch;
}
header[role="banner"] .top-second-line ul li {
  position: relative;
}
/* Перебиваем Bootstrap-овскую CSS-переменную padding-x для .nav-link на уровне навбара,
   чтобы при min-width:992px пункты получили нужный горизонтальный отступ. */
header[role="banner"] .top-second-line .navbar,
header[role="banner"] .top-second-line .navbar-nav {
  --bs-navbar-nav-link-padding-x: 24px;
}
/* Десктопные стили пунктов верхнего меню — только при ширине ≥992px,
   чтобы не перекрывать мобильные правила (там фон белый, текст тёмный) */
@media (min-width: 992px) {
  header[role="banner"] .top-second-line ul li > a,
  header[role="banner"] .top-second-line ul li > span.nav-link {
    display: block;
    padding: 16px 24px;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 1rem;
    transition: background .2s;
  }
  header[role="banner"] .top-second-line ul li > span.nav-link {
    cursor: default;
  }
}
header[role="banner"] .top-second-line ul li a:hover,
header[role="banner"] .top-second-line ul li.active > a,
header[role="banner"] .top-second-line ul li:hover > a {
  background: rgba(0,0,0,.15);
  color: #fff;
}

/* Подменю (dropdown). Bootstrap 5 рендерит подменю как .dropdown-menu (стандарт).
   Drupal system_menu_block может рендерить либо bootstrap-структуру (.dropdown-menu),
   либо обычные nested ul. Поддерживаем оба варианта. */
header[role="banner"] .top-second-line .dropdown-menu,
header[role="banner"] .top-second-line ul li ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
  background: #fff;
  min-width: 240px;
  box-shadow: 0 6px 24px rgba(0,0,0,.15);
  z-index: 100;
  border: 0;
  border-radius: 0;
  flex-direction: column;
  transform: none;
}
/* Hover-открытие подменю — только на десктопе. На мобильном hover «прилипает»
   при тапе и одновременно раскрывает несколько подменю. */
@media (min-width: 992px) {
  header[role="banner"] .top-second-line li:hover > .dropdown-menu,
  header[role="banner"] .top-second-line li:hover > ul,
  header[role="banner"] .top-second-line .dropdown:hover > .dropdown-menu {
    display: block;
  }
}
header[role="banner"] .top-second-line .dropdown-menu li,
header[role="banner"] .top-second-line ul li ul li {
  display: block;
}
header[role="banner"] .top-second-line .dropdown-menu li a,
header[role="banner"] .top-second-line ul li ul li a,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item {
  position: relative;
  display: block;
  color: var(--schnel-dark);
  padding: 12px 20px 12px 44px;
  text-transform: none;
  letter-spacing: normal;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 16px center;
  background-size: 18px 18px;
  border-bottom: 1px solid transparent;
  transition: padding-left .25s ease, color .25s ease, background-position .25s ease, border-color .25s ease;
}
/* Стрелка → слева (появляется на hover, скрыта по умолчанию) */
header[role="banner"] .top-second-line .dropdown-menu li a::before,
header[role="banner"] .top-second-line ul li ul li a::before,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 14px;
  height: 14px;
  margin-top: -7px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 5l7 7-7 7'/></svg>") no-repeat center / contain;
  opacity: 0;
  transform: translateX(-6px);
  transition: opacity .25s ease, transform .25s ease;
}
/* На hover/active: подсветка золотом, сдвиг текста вправо, появление стрелки, золотое подчёркивание */
header[role="banner"] .top-second-line .dropdown-menu li a:hover,
header[role="banner"] .top-second-line ul li ul li a:hover,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item:hover,
header[role="banner"] .top-second-line .dropdown-menu li a.is-active,
header[role="banner"] .top-second-line .dropdown-menu li.menu-item--active-trail > a,
header[role="banner"] .top-second-line ul li ul li a.is-active,
header[role="banner"] .top-second-line ul li ul li.menu-item--active-trail > a,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item.active,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item.is-active {
  background-color: transparent;
  color: var(--schnel-gold);
  padding-left: 60px;
  background-position: 32px center;
  border-bottom-color: var(--schnel-gold);
}
header[role="banner"] .top-second-line .dropdown-menu li a:hover::before,
header[role="banner"] .top-second-line ul li ul li a:hover::before,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item:hover::before,
header[role="banner"] .top-second-line .dropdown-menu li a.is-active::before,
header[role="banner"] .top-second-line .dropdown-menu li.menu-item--active-trail > a::before,
header[role="banner"] .top-second-line ul li ul li a.is-active::before,
header[role="banner"] .top-second-line ul li ul li.menu-item--active-trail > a::before,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item.active::before,
header[role="banner"] .top-second-line .dropdown-menu .dropdown-item.is-active::before {
  opacity: 1;
  transform: translateX(0);
}

/* Иконки 6 категорий «Решения» — inline SVG как background-image. Привязка по href. */
header[role="banner"] .top-second-line .dropdown-menu a[href*="rynok-molochnoy"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M5 3h14l-1.5 17a2 2 0 0 1-2 1.8h-7a2 2 0 0 1-2-1.8L5 3z'/><path d='M6 9h12'/></svg>");
}
header[role="banner"] .top-second-line .dropdown-menu a[href*="produkciya-iz-molochnogo"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3c-3 4-6 8-6 12a6 6 0 0 0 12 0c0-4-3-8-6-12z'/></svg>");
}
header[role="banner"] .top-second-line .dropdown-menu a[href*="molochnye-ingredienty"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M9 3v12a3 3 0 0 0 6 0V3M8 3h8M9 11h6'/></svg>");
}
header[role="banner"] .top-second-line .dropdown-menu a[href*="sukhoe-moloko"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><circle cx='6' cy='12' r='2.5'/><circle cx='18' cy='6' r='2.5'/><circle cx='18' cy='18' r='2.5'/><path d='M8.5 11l7-3.5M8.5 13l7 3.5'/></svg>");
}
header[role="banner"] .top-second-line .dropdown-menu a[href*="fermentirovannye"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20c0-8 6-15 16-15-1 11-7 16-15 16'/><path d='M5 19l8-8'/></svg>");
}
header[role="banner"] .top-second-line .dropdown-menu a[href*="morozhenoe"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2v20M2 12h20M5 5l14 14M19 5L5 19'/></svg>");
}
/* Иконка "скачать" для PDF-ссылок (Брошюры) */
header[role="banner"] .top-second-line .dropdown-menu a[href$=".pdf"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD9933' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3v12'/><path d='M7 10l5 5 5-5'/><path d='M4 19h16'/></svg>");
}

/* =========================================================
   МОБИЛЬНОЕ МЕНЮ (< 992px): hamburger → overlay со списком пунктов
   и accordion-раскрытием подменю по клику.
   ========================================================= */
@media (max-width: 991.98px) {
  /* Скрываем контакты в шапке на мобильном */
  .schnel-header-contacts { display: none; }

  /* Уменьшаем верхнюю полосу — отступы симметричные сверху/справа */
  header[role="banner"] .top-first-line { padding: 10px; }
  header[role="banner"] .top-logo a img { height: 60px; }

  /* Toggler — гамбургер */
  header[role="banner"] .navbar-toggler {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    padding: 8px;
    width: 44px;
    height: 44px;
    background: transparent;
    color: var(--schnel-dark);
    box-shadow: none;
  }
  header[role="banner"] .navbar-toggler:focus { box-shadow: none; outline: none; }
  header[role="banner"] .navbar-toggler-icon {
    width: 28px;
    height: 28px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='%23222' stroke-width='2.5' stroke-linecap='round'><path d='M5 8h20M5 15h20M5 22h20'/></svg>");
  }
  /* Когда меню открыто — иконка X на том же месте, где была гамбургер */
  header[role="banner"] .navbar-toggler:not(.collapsed) .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='%23222' stroke-width='2.5' stroke-linecap='round'><path d='M7 7l16 16M23 7L7 23'/></svg>");
  }

  /* Прячем золотую полосу в свёрнутом состоянии */
  header[role="banner"] .top-second-line { background: transparent; padding: 0; }
  header[role="banner"] .top-second-line::before { display: none; }

  /* Меню (collapse) — раскрывается ниже шапки (стандартный Bootstrap collapse,
     без position:fixed и transform — просто белый блок с тенью). */
  header[role="banner"] .top-second-line .navbar-collapse {
    background: #fff;
    box-shadow: 0 8px 16px rgba(0,0,0,.08);
    padding: 8px 16px 16px;
  }

  /* Вертикальный список */
  header[role="banner"] .top-second-line ul.menu,
  header[role="banner"] .top-second-line .navbar-collapse ul {
    display: block;
    flex-direction: column;
    width: 100%;
  }
  header[role="banner"] .top-second-line ul li {
    display: block;
    width: 100%;
    border-bottom: 1px solid #eee;
    position: static;
  }
  header[role="banner"] .top-second-line ul li > a,
  header[role="banner"] .top-second-line ul li > span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--schnel-dark);
    background: transparent;
    text-transform: none;
    letter-spacing: normal;
    font-size: 1.05rem;
    padding: 16px 8px;
  }
  header[role="banner"] .top-second-line ul li > a:hover,
  header[role="banner"] .top-second-line ul li > span:hover {
    background: transparent;
    color: var(--schnel-gold);
  }

  /* Chevron справа у пунктов с детьми */
  header[role="banner"] .top-second-line li.menu-item--expanded > a::after,
  header[role="banner"] .top-second-line li.menu-item--expanded > span::after,
  header[role="banner"] .top-second-line li.dropdown > a::after,
  header[role="banner"] .top-second-line li.nav-item.dropdown > a::after {
    content: "";
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M9 6l6 6-6 6'/></svg>") no-repeat center / contain;
    transition: transform .25s;
    margin-left: auto;
    border: 0;
  }
  header[role="banner"] .top-second-line li.is-open > a::after,
  header[role="banner"] .top-second-line li.is-open > span::after {
    transform: rotate(90deg);
  }

  /* Подменю — статичное, по умолчанию свёрнутое; появляется при .is-open.
     Bootstrap может добавлять .show при кликах — перебиваем !important. */
  header[role="banner"] .top-second-line .dropdown-menu,
  header[role="banner"] .top-second-line ul li ul,
  header[role="banner"] .top-second-line .dropdown-menu.show,
  header[role="banner"] .top-second-line ul li ul.show {
    position: static !important;
    transform: none !important;
    box-shadow: none;
    border: 0;
    background: transparent;
    width: 100%;
    min-width: 0;
    padding: 0 0 8px 16px;
    display: none !important;
    margin: 0;
  }
  header[role="banner"] .top-second-line li.is-open > .dropdown-menu,
  header[role="banner"] .top-second-line li.is-open > ul {
    display: block !important;
  }

  /* Подпункты на мобильном — иконка слева, без анимации сдвига */
  header[role="banner"] .top-second-line .dropdown-menu a,
  header[role="banner"] .top-second-line ul li ul li a {
    padding: 12px 8px 12px 36px !important;
    background-position: 8px center !important;
    background-size: 16px 16px;
    border-bottom: 1px solid #f5f5f5;
    transition: color .2s;
  }
  header[role="banner"] .top-second-line .dropdown-menu a:hover,
  header[role="banner"] .top-second-line ul li ul li a:hover {
    padding-left: 36px !important;
    background-position: 8px center !important;
    color: var(--schnel-gold);
    border-bottom-color: var(--schnel-gold);
  }
  /* Стрелка → на hover на мобильном не нужна */
  header[role="banner"] .top-second-line .dropdown-menu a::before,
  header[role="banner"] .top-second-line ul li ul li a::before {
    display: none;
  }

}

/* Hero slider — оригинальные классы (.slide-item совпадают с оригиналом) */
.schnel-hero-slider { position: relative; overflow: hidden; }
.schnel-hero-slider .schnel-slide-item { position: relative; }
.schnel-hero-slider .schnel-slide-item img { width: 100%; height: auto; object-fit: cover; }
/* Двойная разметка desktop/mobile: показываем только один img в зависимости от ширины */
.schnel-hero-slider .schnel-slide-item img.schnel-slide-img--desktop { display: block; }
.schnel-hero-slider .schnel-slide-item img.schnel-slide-img--mobile  { display: none; }
@media (max-width: 768px) {
  .schnel-hero-slider .schnel-slide-item img.schnel-slide-img--desktop { display: none; }
  .schnel-hero-slider .schnel-slide-item img.schnel-slide-img--mobile  { display: block; }
}
/* Точки */
.schnel-hero-slider .slick-dots { bottom: 30px; }
.schnel-hero-slider .slick-dots li button:before { font-size: 12px; color: var(--schnel-gold); opacity: .5; }
.schnel-hero-slider .slick-dots li.slick-active button:before { color: var(--schnel-gold); opacity: 1; }
/* Стрелки — не зависим от font-family 'slick' (он может не подгрузиться), рисуем юникод-стрелки шрифтом темы */
.schnel-hero-slider .slick-prev,
.schnel-hero-slider .slick-next {
  width: 50px; height: 50px; z-index: 5;
  background: rgba(0,0,0,.35); border-radius: 50%;
  transition: background .2s;
}
.schnel-hero-slider .slick-prev:hover,
.schnel-hero-slider .slick-next:hover { background: var(--schnel-gold); }
.schnel-hero-slider .slick-prev { left: 30px; }
.schnel-hero-slider .slick-next { right: 30px; }
.schnel-hero-slider .slick-prev:before,
.schnel-hero-slider .slick-next:before {
  font-family: inherit;
  font-size: 28px; line-height: 1;
  color: #fff; opacity: 1;
  display: inline-block;
}
.schnel-hero-slider .slick-prev:before { content: '\2039'; }   /* ‹ */
.schnel-hero-slider .slick-next:before { content: '\203A'; }   /* › */

/* Features Layout 2 (4 карточки на главной) */
.features-Layout2 { padding: 80px 0; background: #fff; }
.features-Layout2 .features-wrap {
  gap: 0;
  /* Небольшие отступы между карточками — чтобы каждый прямоугольник был виден */
  --feat-gap: 12px;
  margin: 0 calc(var(--feat-gap) * -0.5);
  row-gap: var(--feat-gap);
}
.features-Layout2 .feature-item {
  padding: 0 calc(var(--feat-gap) * 0.5);
  border-right: 0;
}
/* Тень — на каждой карточке отдельно */
.features-Layout2 .feature__content {
  box-shadow: 0 15px 35px rgba(0, 0, 0, .08), 0 5px 15px rgba(0, 0, 0, .04);
}
/* Вся карточка — ссылка. На hover: золотой фон + белый текст + стрелка вправо */
.features-Layout2 .feature__content {
  display: block;
  padding: 50px 35px;
  height: 100%;
  text-decoration: none;
  background: #fff;
  transition: background .3s ease;
}
.features-Layout2 .feature__content:hover,
.features-Layout2 .feature__content:focus { background: var(--schnel-gold); text-decoration: none; }
.features-Layout2 .feature__title {
  color: var(--schnel-dark);
  font-size: 1.25rem; font-weight: 700;
  margin-bottom: 18px;
  transition: color .3s ease;
}
.features-Layout2 .feature__desc {
  color: var(--schnel-text);
  font-size: 1rem; line-height: 1.7;
  margin-bottom: 22px;
  transition: color .3s ease;
}
.features-Layout2 .feature__link {
  display: inline-block;
  color: var(--schnel-gold);
  font-size: 1.5rem; line-height: 1;
  transition: color .3s ease, transform .3s ease;
}
.features-Layout2 .feature__content:hover .feature__title,
.features-Layout2 .feature__content:hover .feature__desc,
.features-Layout2 .feature__content:hover .feature__link { color: #fff; }
.features-Layout2 .feature__content:hover .feature__link { transform: translateX(6px); }

/* About section */
/* === About section (новая разметка: текст + фото с бейджем + V/M/V) === */
.schnel-about-section { padding: 90px 0 70px; background: #fff; }
.schnel-about-top { row-gap: 30px; }

.schnel-about-eyebrow {
  display: inline-block;
  color: var(--schnel-gold);
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 0.875rem;
  margin-bottom: 18px;
}
.schnel-about-title {
  font-family: 'Rubik', sans-serif;
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--schnel-dark);
  line-height: 1.15;
  margin: 0 0 14px;
}
.schnel-about-lede {
  font-size: 1.25rem;
  color: var(--schnel-dark);
  line-height: 1.45;
  margin: 0 0 22px;
}
.schnel-about-intro {
  font-weight: 700;
  color: var(--schnel-dark);
  line-height: 1.6;
  margin-bottom: 28px;
}

/* Карточки-преимущества с золотой полоской слева и check-иконкой */
.schnel-about-bullets { display: flex; flex-direction: column; gap: 16px; }
.schnel-about-bullet {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: #fff;
  border-left: 3px solid var(--schnel-gold);
  border-radius: 12px;
  padding: 16px 18px;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  transition: transform .25s ease, box-shadow .25s ease;
}
.schnel-about-bullet:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0,0,0,.10);
}
.schnel-about-bullet__icon {
  flex: 0 0 auto;
  color: var(--schnel-gold);
  width: 22px; height: 22px;
  margin-top: 2px;
}
.schnel-about-bullet__icon svg { width: 100%; height: 100%; display: block; }
.schnel-about-bullet p { margin: 0; color: var(--schnel-text); line-height: 1.55; }

/* Фото справа с бейджем «3 Decades» */
.schnel-about-media { padding-top: 30px; }
.schnel-about-photo {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(0,0,0,.12);
  background: var(--schnel-light);
}
.schnel-about-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.schnel-about-badge {
  position: absolute;
  top: 24px; right: 24px;
  background: var(--schnel-gold);
  color: #fff;
  padding: 18px 28px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 8px 22px rgba(0,0,0,.18);
}
.schnel-about-badge__num {
  display: block;
  font-family: 'Rubik', sans-serif;
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1.1;
}
.schnel-about-badge__lbl {
  display: block;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  margin-top: 4px;
  opacity: .95;
}

/* Vision / Mission / Values */
.schnel-vmv { margin-top: 50px; row-gap: 24px; }
.schnel-vmv-card {
  position: relative;
  background: #fff;
  border-top: 3px solid var(--schnel-gold);
  border-radius: 14px;
  padding: 35px 30px 30px;
  height: 100%;
  box-shadow: 0 10px 28px rgba(0,0,0,.07);
  transition: transform .25s ease, box-shadow .25s ease;
}
.schnel-vmv-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 22px 44px rgba(0,0,0,.12);
}
.schnel-vmv-icon {
  width: 36px; height: 36px;
  color: var(--schnel-gold);
  margin-bottom: 18px;
}
.schnel-vmv-icon svg { width: 100%; height: 100%; display: block; }
.schnel-vmv-title {
  font-family: 'Rubik', sans-serif;
  color: var(--schnel-dark);
  font-size: 1.35rem;
  font-weight: 700;
  margin: 0 0 12px;
}
.schnel-vmv-card p { margin: 0; color: var(--schnel-text); line-height: 1.6; }
.schnel-vmv-list { padding-left: 0; margin: 0; list-style: none; }
.schnel-vmv-list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
  color: var(--schnel-text);
  line-height: 1.4;
}
.schnel-vmv-list li::before {
  content: '';
  position: absolute;
  left: 0; top: 7px;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: var(--schnel-gold);
}

@media (max-width: 991.98px) {
  .schnel-about-media { padding-top: 10px; }
  .schnel-about-badge { top: 16px; right: 16px; padding: 12px 18px; }
  .schnel-about-badge__num { font-size: 1.3rem; }
}

/* === Страница «Руководство» — карточки руководителей === */
.leader-section {
  padding: 50px 0;
  border-bottom: 1px solid #eee;
}
.leader-section:last-of-type { border-bottom: 0; }
.leader-section .leader-img img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  display: block;
}
.leader-section .leader-content h2 {
  font-family: 'Rubik', sans-serif;
  font-size: 1.85rem;
  font-weight: 700;
  color: var(--schnel-dark);
  margin: 0 0 8px;
  line-height: 1.2;
}
.leader-section .leader-meta {
  display: inline-block;
  color: var(--schnel-gold);
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 16px;
}
.leader-section .leader-content p {
  color: var(--schnel-text);
  line-height: 1.7;
  margin: 0 0 14px;
  font-size: 1rem;
}
@media (max-width: 991.98px) {
  .leader-section { padding: 30px 0; }
  .leader-section .leader-content h2 { font-size: 1.5rem; }
}

/* === Похожие продукты на странице конкретного продукта ===
   Использует те же классы, что .view-solution-products-all, чтобы наследовать стиль карточек. */
.schnel-related-products {
  margin: 50px 0 30px;
}
.schnel-related-products__title {
  font-family: 'Rubik', sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--schnel-dark);
  margin: 0 0 24px;
}
/* Карточка-обёртка как <a> — убрать подчёркивание и наследовать цвет */
.schnel-related-products .product-card-col {
  text-decoration: none;
  color: inherit;
}
.schnel-related-products .product-card-col:hover { text-decoration: none; }
/* Заголовок: hover-цвет, когда вся карточка — ссылка */
.schnel-related-products .product-card-col:hover .views-field-title { color: var(--schnel-gold); }

/* === Плитка-фильтр категорий над страницей «Продукция» === */
.schnel-products-filter { margin: 0 0 30px; }
.schnel-products-filter__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.schnel-products-filter .schnel-filter-pill {
  display: inline-block;
  padding: 9px 18px;
  border: 1px solid #e2e2e2;
  border-radius: 999px;
  background: #fff;
  color: var(--schnel-dark);
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  white-space: nowrap;
}
.schnel-products-filter .schnel-filter-pill:hover {
  background: var(--schnel-light);
  border-color: var(--schnel-gold);
  color: var(--schnel-gold);
  text-decoration: none;
}
.schnel-products-filter .schnel-filter-pill.is-active {
  background: var(--schnel-gold);
  border-color: var(--schnel-gold);
  color: #fff;
}
.schnel-products-filter .schnel-filter-pill.is-active:hover {
  background: var(--schnel-gold-hover);
  border-color: var(--schnel-gold-hover);
  color: #fff;
}

/* === Сетка карточек продуктов (View «Продукция», /products) ===
   Row-class .product-card-col уже включает Bootstrap col-lg-3, но мы используем
   gap-сетку, чтобы между карточками был промежуток, а карточка целиком — это и есть .product-card-col. */
.view-solution-products-all .view-content {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 0;
}
.view-solution-products-all .product-card-col {
  flex: 0 0 33.333%;
  max-width: 33.333%;
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  background: #fff;
  border-radius: 0;
  border-right: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
  overflow: hidden;
  box-shadow: none;
  transition: box-shadow .25s ease;
}
.view-solution-products-all .product-card-col:hover {
  z-index: 2;
  box-shadow: 0 14px 30px rgba(0,0,0,.10);
}
/* Убираем правую/нижнюю обводку у крайних карточек, чтобы рамка не висела «лишней» */
@media (min-width: 992px) {
  .view-solution-products-all .view-content > .product-card-col:nth-child(3n) { border-right: 0; }
}
@media (min-width: 576px) and (max-width: 991.98px) {
  .view-solution-products-all .product-card-col {
    flex-basis: 50%;
    max-width: 50%;
  }
  .view-solution-products-all .view-content > .product-card-col:nth-child(2n) { border-right: 0; }
}
@media (max-width: 575.98px) {
  .view-solution-products-all .product-card-col {
    flex-basis: 100%;
    max-width: 100%;
    border-right: 0;
  }
}
/* «Подробнее →» — нижняя ссылка-CTA в карточке продукта */
.view-solution-products-all .views-field-view-node {
  margin: 0 22px 22px;
  color: var(--schnel-gold);
  font-weight: 700;
  font-size: 0.95rem;
  transition: transform .2s ease;
}
.view-solution-products-all .views-field-view-node a,
.view-solution-products-all .views-field-view-node .field-content,
.view-solution-products-all .product-card__cta a {
  display: inline-block;
  color: var(--schnel-gold);
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  transition: transform .2s ease;
}
.view-solution-products-all .product-card-col:hover .views-field-view-node,
.view-solution-products-all .product-card-col:hover .views-field-view-node a,
.view-solution-products-all .product-card-col:hover .views-field-view-node .field-content,
.view-solution-products-all .views-field-view-node a:hover,
.view-solution-products-all .product-card__cta a:hover {
  transform: translateX(4px);
  color: var(--schnel-gold);
  text-decoration: none;
}
/* Картинка — без отступов сверху, на всю ширину карточки. Zoom при hover, как в Решениях. */
.view-solution-products-all .product-card-col .views-field-field-image,
.view-solution-products-all .product-card-col .views-field-field-image .field-content,
.view-solution-products-all .product-card-col .views-field-field-image a { margin: 0; display: block; }
.view-solution-products-all .product-card-col .views-field-field-image,
.view-solution-products-all .product-card-col .views-field-field-image a {
  overflow: hidden;
}
.view-solution-products-all .product-card-col .views-field-field-image img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform .5s ease;
}
.view-solution-products-all .product-card-col:hover .views-field-field-image img {
  transform: scale(1.05);
}
/* Заголовок */
.view-solution-products-all .product-card-col .views-field-title {
  font-family: 'Rubik', sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--schnel-dark);
  margin: 20px 22px 10px;
  line-height: 1.3;
}
.view-solution-products-all .product-card-col .views-field-title a { color: inherit; text-decoration: none; }
.view-solution-products-all .product-card-col .views-field-title a:hover { color: var(--schnel-gold); }
/* Краткое описание */
.view-solution-products-all .product-card-col .views-field-field-summary {
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--schnel-muted);
  margin: 0 22px 22px;
  flex-grow: 1;
}

/* === Hero-картинка на странице категории/продукта Solutions ===
   Сидит внутри node-article (внутри .container), но «вылезает» на всю
   ширину viewport отрицательными margin-ми. */
.solution-hero {
  position: relative;
  width: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 0;
  margin-bottom: 30px;
  overflow: hidden;
  background: var(--schnel-light);
}
.solution-hero .field,
.solution-hero .field__item { margin: 0; }
.solution-hero img {
  display: block;
  width: 100%;
  height: auto;
}

/* === Хлебные крошки: отступы сверху и по горизонтали в линию с контентом === */
nav.breadcrumb,
.breadcrumb,
.easy-breadcrumb {
  margin-top: 20px;
  padding-left: 14px;
  padding-right: 40px;
}
@media (max-width: 767.98px) {
  nav.breadcrumb,
  .breadcrumb,
  .easy-breadcrumb {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* === Категории решений (6 карточек): текст сверху, фото снизу — как на оригинале === */
.schnel-categories { background: var(--schnel-light); padding: 80px 0; }
.schnel-categories__header { margin-bottom: 40px; }
.schnel-categories__title {
  font-family: 'Rubik', sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: var(--schnel-dark);
  line-height: 1.2;
  margin: 0;
  max-width: 720px;
}
.schnel-categories__grid { row-gap: 0; }
.schnel-cat-col { padding: 0; }

.schnel-cat-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  text-decoration: none;
  color: inherit;
  border-right: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
  transition: box-shadow .3s ease, transform .3s ease;
}
.schnel-cat-card:hover {
  z-index: 2;
  box-shadow: 0 14px 30px rgba(0,0,0,.10);
  text-decoration: none;
  color: inherit;
}
/* Картинка сверху, текст снизу — описание + CTA Подробнее */
.schnel-cat-card__body {
  padding: 24px 28px 28px;
  background: #fff;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.schnel-cat-card__body .schnel-cat-card__cta { margin-top: auto; }
.schnel-cat-card__title {
  font-family: 'Rubik', sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--schnel-dark);
  margin: 0 0 12px;
  line-height: 1.3;
}
.schnel-cat-card__desc {
  margin: 0 0 16px;
  color: var(--schnel-muted);
  font-size: 0.95rem;
  line-height: 1.55;
}
.schnel-cat-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--schnel-dark);
  font-weight: 700;
  font-size: 0.95rem;
  transition: color .25s ease, transform .25s ease;
}
.schnel-cat-card__cta i {
  font-style: normal;
  display: inline-block;
  transition: transform .25s ease;
}
.schnel-cat-card:hover .schnel-cat-card__cta { color: var(--schnel-gold); }
.schnel-cat-card:hover .schnel-cat-card__cta i { transform: translateX(4px); }

/* Картинка сверху — занимает всю ширину карточки */
.schnel-cat-card__image {
  overflow: hidden;
  background: #ddd;
}
.schnel-cat-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
.schnel-cat-card:hover .schnel-cat-card__image img { transform: scale(1.05); }

/* Сетка 3×2 без пробелов между карточками — как полотно с разделителями */
@media (min-width: 992px) {
  .schnel-categories__grid > .schnel-cat-col:nth-child(3n) .schnel-cat-card { border-right: 0; }
  .schnel-categories__grid > .schnel-cat-col:nth-last-child(-n+3) .schnel-cat-card { border-bottom: 0; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .schnel-categories__grid > .schnel-cat-col:nth-child(2n) .schnel-cat-card { border-right: 0; }
}
@media (max-width: 767.98px) {
  .schnel-cat-card { border-right: 0; }
}

/* Why Choose SCHNEL */
/* === Видео-секция (на белом фоне, как на оригинале) === */
.schnel-video-section { background: #fff; padding: 80px 0 60px; }
.schnel-video-section .section-header { margin-bottom: 30px; }
.schnel-video-section__title {
  font-family: 'Rubik', sans-serif;
  color: var(--schnel-dark);
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 10px;
}
.schnel-video-section__subtitle {
  color: var(--schnel-text);
  font-size: 1rem;
  font-weight: 600;
  margin: 0 auto;
  max-width: 720px;
}
.schnel-video-section .schnel-video {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(0,0,0,.15);
}

/* === «Почему выбирают SCHNEL» — тёмный фон, идёт сразу после видео === */
.features-list-layout2 {
  background: #181818;
  color: #fff;
  padding: 90px 0 80px;
}
/* На главной — карточка «Запрос предложения» наезжает на этот блок снизу,
   поэтому увеличиваем нижний паддинг, чтобы 4 пиллара не оказались под карточкой. */
.path-frontpage .features-list-layout2 { padding-bottom: 240px; }
.features-list-layout2__top { margin-bottom: 50px; }
.features-list-layout2 .section-subtitle {
  display: block;
  text-align: center;
  color: var(--schnel-gold);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-weight: 700;
  margin-bottom: 28px;
  font-size: 0.875rem;
}
.features-list-layout2__heading { row-gap: 18px; }
.features-list-layout2 .section-title {
  font-family: 'Rubik', sans-serif;
  color: #fff;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}
.features-list-layout2__lead {
  color: #b8b8b8;
  font-size: 1rem;
  line-height: 1.7;
  margin: 0;
}

/* Сетка 2×2 — карточки в тёмном фоне с тонкой светлой рамкой */
.features-list-layout2 .pillars-row { row-gap: 24px; }
.features-list-layout2 .pillar-col { display: flex; }
.features-list-layout2 .pillar-item {
  width: 100%;
  background: #232323;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 12px;
  padding: 28px 30px;
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.features-list-layout2 .pillar-item:hover {
  border-color: var(--schnel-gold);
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, .35);
}
.pillar__title{
  word-wrap: anywhere;
}

.features-list-layout2 .pillar__title {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-family: 'Rubik', sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 14px;
}
.features-list-layout2 .pillar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px; height: 26px;
  color: var(--schnel-gold);
  flex: 0 0 auto;
}
.features-list-layout2 .pillar__icon svg { width: 100%; height: 100%; display: block; }
.features-list-layout2 .pillar__desc {
  color: #b8b8b8;
  font-size: 0.95rem;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 991.98px) {
  .features-list-layout2 .section-title { font-size: 1.75rem; }
  .features-list-layout2__top { margin-bottom: 40px; }
}

/* Brochure section */
.brochure-section { background: #fff; padding: 80px 0; border-bottom: 1px solid #eee; }
.brochure-section .section-title { color: var(--schnel-dark); font-weight: 700; margin-bottom: 15px; }
.brochure-section .section-desc { color: var(--schnel-text); max-width: 720px; margin: 0 auto 30px; line-height: 1.7; }
.brochure-section .brochure-btn,
.brochure-section a.brochure-btn,
.brochure-section a.brochure-btn:link,
.brochure-section a.brochure-btn:visited {
  display: inline-block;
  background: var(--schnel-gold);
  border-color: var(--schnel-gold);
  color: #fff;
  padding: 14px 36px;
  font-weight: 600;
  letter-spacing: 0.5px;
  border-radius: 4px;
  text-decoration: none;
  transition: background .3s, color .3s;
}
.brochure-section a.brochure-btn:hover,
.brochure-section a.brochure-btn:focus {
  background: var(--schnel-gold-hover);
  border-color: var(--schnel-gold-hover);
  color: #fff;
}

/* Partners section */
/* === Блок «Запрос предложения»: двухколоночная карточка с наездом на тёмный блок === */
.schnel-quote-section {
  position: relative;
  z-index: 2;
  padding: 0 0 60px;
  /* Карточка наезжает на предыдущий тёмный блок: подтягиваем секцию вверх. */
  margin-top: -60px;
}
.schnel-quote-section .container { position: relative; }

.quote-card {
  display: grid;
  grid-template-columns: 380px 1fr;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 25px 60px rgba(0,0,0,.18);
}
.quote-card__left {
  background: var(--schnel-gold);
  color: #fff;
  padding: 36px 32px;
}
.quote-card__photo {
  margin: -36px -32px 24px;
  overflow: hidden;
}
.quote-card__photo img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
}
.quote-card__title {
  font-family: 'Rubik', sans-serif;
  color: #fff;
  font-size: 1.35rem;
  font-weight: 700;
  margin: 0 0 14px;
  line-height: 1.3;
}
.quote-card__desc {
  color: rgba(255,255,255,.95);
  font-size: 0.95rem;
  line-height: 1.6;
  margin: 0 0 22px;
}
.quote-card__brochures strong {
  display: block;
  color: #1a1a1a;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 12px;
}
.quote-card__brochure-buttons {
  display: flex;
  background: #1a1a1a;
  border-radius: 4px;
  overflow: hidden;
}
.quote-card__btn-pdf {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #1a1a1a;
  color: #fff;
  padding: 12px 16px;
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none;
  transition: background .2s ease;
}
.quote-card__btn-pdf:hover { background: #000; color: #fff; text-decoration: none; }
.quote-card__btn-pdf + .quote-card__btn-pdf { border-left: 1px solid rgba(255,255,255,.18); }
.quote-card__pdf-icon { font-size: 1rem; line-height: 1; }

.quote-card__right { padding: 40px 44px; background: #fff; }
.quote-card__form-title {
  font-family: 'Rubik', sans-serif;
  color: var(--schnel-dark);
  font-size: 1.7rem;
  font-weight: 700;
  margin: 0 0 10px;
}
.quote-card__form-desc {
  color: var(--schnel-muted);
  font-size: 0.95rem;
  line-height: 1.55;
  margin: 0 0 24px;
}

/* Стилизуем поля webform под плоский серый input + чёрная кнопка */
.quote-card__form .webform-submission-form .form-item { margin: 0 0 16px; }
.quote-card__form .form-control,
.quote-card__form input[type="text"],
.quote-card__form input[type="email"],
.quote-card__form input[type="tel"],
.quote-card__form select,
.quote-card__form textarea {
  width: 100%;
  background: #f3f3f3;
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 14px 16px;
  font-size: 0.95rem;
  color: var(--schnel-dark);
  transition: border-color .2s ease, background .2s ease;
}
.quote-card__form .form-control:focus,
.quote-card__form input:focus,
.quote-card__form select:focus,
.quote-card__form textarea:focus {
  background: #fff;
  border-color: var(--schnel-gold);
  outline: none;
  box-shadow: none;
}
.quote-card__form textarea { min-height: 120px; resize: vertical; }
.quote-card__form label { display: none; }

/* Сетка 2×2 для коротких полей: имя/email/тел/сегмент. Textarea на всю ширину. */
.quote-card__form .webform-submission-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 16px;
}
.quote-card__form .webform-submission-form > .form-item-details,
.quote-card__form .webform-submission-form > .form-actions,
.quote-card__form .webform-submission-form > .form-item-form-build-id,
.quote-card__form .webform-submission-form > .form-item-form-id,
.quote-card__form .webform-submission-form > .form-item-form-token,
.quote-card__form .webform-submission-form > input[type="hidden"] { grid-column: 1 / -1; }

.quote-card__form .form-actions { margin-top: 8px; }
.quote-card__form .button,
.quote-card__form .btn,
.quote-card__form input[type="submit"] {
  background: #1a1a1a;
  border: 0;
  color: #fff;
  padding: 14px 28px;
  font-weight: 700;
  font-size: 0.95rem;
  border-radius: 4px;
  cursor: pointer;
  transition: background .2s ease;
}
.quote-card__form .button:hover,
.quote-card__form .btn:hover,
.quote-card__form input[type="submit"]:hover { background: var(--schnel-gold); }

.quote-card__phone {
  margin: 26px 0 0;
  text-align: center;
  color: var(--schnel-text);
  font-size: 0.95rem;
  font-weight: 600;
}
.quote-card__phone a { color: #00b13a; font-weight: 700; }

/* На /kontakty форма не должна наезжать на тело контактов: нулевой отрицательный margin
   и доп. отступ снизу у самого body, чтобы воздуха было достаточно. */
body.path-kontakty .schnel-quote-section,
body.page-node-33 .schnel-quote-section { margin-top: 0; padding-top: 60px; }
body.path-kontakty .node__content .contacts-section { margin-bottom: 80px; },
body.page-node-33 .node__content .contacts-section { padding-bottom: 60px; }

.contacts-section { margin-bottom: 80px; }

@media (max-width: 991.98px) {
  .schnel-quote-section { margin-top: -100px; }
  .quote-card { grid-template-columns: 1fr; }
  .quote-card__photo img { height: 180px; }
  .quote-card__right { padding: 30px 24px; }
  .quote-card__form .webform-submission-form { grid-template-columns: 1fr; }
}

/* === Футер: тёмный фон на всю ширину, лого + адрес слева, ссылки в центре, соцсети справа === */
.schnel-footer { color: #b8b8b8; margin-top: 0; }
.schnel-footer a { color: #b8b8b8; text-decoration: none; transition: color .2s ease; }
.schnel-footer a:hover, .schnel-footer a:focus { color: var(--schnel-gold); text-decoration: none; }

/* Растягиваем тёмный фон на всю ширину viewport через ::before, контент остаётся в .container */
.schnel-footer__main, .schnel-footer__bottom { position: relative; }
.schnel-footer__main::before,
.schnel-footer__bottom::before {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  z-index: 0;
}
.schnel-footer__main::before { background: #0d0d0d; }
.schnel-footer__bottom::before { background: #050505; }
.schnel-footer__main > .container,
.schnel-footer__bottom > .container { position: relative; z-index: 1; }

.schnel-footer__main { padding: 70px 0 50px; }
.schnel-footer__row { row-gap: 40px; }

/* Бренд-колонка футера: лого по центру, адрес ниже выровнен по левому краю */
.schnel-footer .schnel-footer__brand {
  display: block !important;
  text-align: center;
  float: none !important;
}
.schnel-footer .schnel-footer__brand .schnel-footer__logo {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  float: none !important;
  margin: 0 0 22px !important;
}
.schnel-footer .schnel-footer__brand .schnel-footer__logo img {
  display: inline-block !important;
  float: none !important;
  max-width: 90px;
  height: auto;
  margin: 0 auto !important;
  vertical-align: top;
}
.schnel-footer .schnel-footer__brand .schnel-footer__address {
  text-align: left;
}
.schnel-footer__address {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: #b8b8b8;
  font-size: 0.95rem;
  line-height: 1.7;
}
.schnel-footer__address-icon {
  flex: 0 0 auto;
  width: 22px; height: 22px;
  color: var(--schnel-gold);
  margin-top: 2px;
}
.schnel-footer__address-icon svg { width: 100%; height: 100%; display: block; }
.schnel-footer__address address { font-style: normal; margin: 0; }

/* Контакты под адресом — телефон и email с золотыми иконками, в стиле address */
.schnel-footer__contacts {
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
  text-align: left;
  display: inline-block;
}
.schnel-footer__contacts li {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  font-size: 0.95rem;
}
.schnel-footer__contact-icon {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  color: var(--schnel-gold);
}
.schnel-footer__contact-icon svg { width: 100%; height: 100%; display: block; }
.schnel-footer__contacts a { color: #b8b8b8; }
.schnel-footer__contacts a:hover { color: var(--schnel-gold); }

.schnel-footer__heading {
  font-family: 'Rubik', sans-serif;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  margin: 0 0 20px;
  text-transform: uppercase;
}

.schnel-footer__links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.schnel-footer__links li { margin: 0 0 12px; }
.schnel-footer__links a { font-size: 0.95rem; }

.schnel-footer__social-list { display: flex; gap: 12px; }
/* Специфичность поднята через .schnel-footer .schnel-footer__social-btn —
   чтобы перебить глобальное .schnel-footer a:hover { color: gold } */
.schnel-footer .schnel-footer__social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px; height: 42px;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  color: #0d0d0d;
  transition: background .25s ease, border-color .25s ease, color .25s ease;
}
.schnel-footer .schnel-footer__social-btn svg {
  width: 22px; height: 22px;
  display: block;
}
.schnel-footer .schnel-footer__social-btn:hover,
.schnel-footer .schnel-footer__social-btn:focus {
  background: var(--schnel-gold);
  border-color: var(--schnel-gold);
  color: #fff;
}

.schnel-footer__bottom {
  padding: 18px 0;
}
.schnel-footer__bottom::before { border-top: 1px solid rgba(255,255,255,.08); }
.schnel-footer__copyright {
  margin: 0;
  text-align: center;
  font-size: 0.875rem;
  color: #888;
}

@media (max-width: 767.98px) {
  .schnel-footer__main { padding: 50px 0 40px; }
}

.partners-section { padding: 70px 0; background: #fff; }
.partners-section .section-title { color: var(--schnel-dark); font-weight: 700; font-family: 'Rubik', sans-serif; }
.partners-section .partner-item {
  padding: 24px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.partners-section .partner-logo {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.partners-section .partner-logo img {
  max-width: 100%;
  max-height: 90px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(0);
  transition: opacity .25s ease, transform .25s ease;
}
.partners-section .partner-item:hover .partner-logo img {
  transform: scale(1.04);
}

/* Products grid (Views products_by_category) */
.products-grid { gap: 0; }
.products-grid .views-row article { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 4px 16px rgba(0,0,0,.06); transition: transform .3s, box-shadow .3s; height: 100%; display: flex; flex-direction: column; }
.products-grid .views-row article:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.products-grid .views-row .field--name-field-image img { width: 100%; height: 200px; object-fit: cover; display: block; }
.products-grid .views-row h2 { padding: 16px 20px 8px; margin: 0; font-size: 1.1rem; }
.products-grid .views-row h2 a { color: var(--schnel-dark); text-decoration: none; }
.products-grid .views-row h2 a:hover { color: var(--schnel-gold); }
.products-grid .views-row .field--name-field-summary { padding: 0 20px 20px; color: var(--schnel-muted); font-size: 0.9rem; line-height: 1.5; }

/* Related products */
.schnel-related-products { padding: 60px 0; border-top: 1px solid #eee; margin-top: 60px; }
.schnel-related-products h2.item-list__title { font-size: 1.5rem; color: var(--schnel-dark); margin-bottom: 24px; font-weight: 700; }
.schnel-related-products ul.item-list { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.schnel-related-products ul.item-list li article { background: #fafafa; border-radius: 6px; padding: 16px; }

/* Front-page: блоки на всю ширину */
.path-frontpage main > .container,
.path-frontpage main > .container-fluid { max-width: 100%; padding: 0; }
.path-frontpage main .col-12 { padding: 0; }
.path-frontpage main .row.g-0 { margin: 0; }
