/* Nocturne — текстовые страницы: доставка, оплата, возврат, оферта.
   Содержимое у них перенесено из старых шаблонов как есть, поэтому здесь
   перекрашиваются классы старой темы (.ms-block, .dost-desc, .row/.col-*,
   таблицы, списки определений) — так же, как мы поступили с оформлением
   заказа. Ни одного hex: всё из переменных палитры. */

.nc-info-head { padding-top: var(--space-4); }
.nc-info-head__title { font-size: 38px; line-height: 1.1; margin: var(--space-3) 0 0; }

.nc-info { padding-top: var(--space-6); padding-bottom: 64px; }
.nc-info__body { font-size: 15px; line-height: 1.6; color: var(--color-neutral-200); max-width: 100%; }

/* базовая типографика */
.nc-info__body p { margin: 0 0 var(--space-4); }
.nc-info__body h2 { font-size: 26px; margin: var(--space-8) 0 var(--space-4); }
.nc-info__body h3 { font-size: 19px; margin: var(--space-6) 0 var(--space-3); }
.nc-info__body h4 { font-size: 16px; margin: var(--space-5) 0 var(--space-2); }
.nc-info__body a { color: var(--color-accent-300); text-decoration: none; }
.nc-info__body a:hover { color: var(--color-accent-200); }
.nc-info__body ul, .nc-info__body ol { margin: 0 0 var(--space-4); padding-left: var(--space-6); }
.nc-info__body li { margin-bottom: var(--space-2); }
.nc-info__body b, .nc-info__body strong { font-weight: 500; color: var(--color-text); }
.nc-info__body img { max-width: 100%; height: auto; }
.nc-info__body hr { border: 0; border-top: 1px solid var(--color-divider); margin: var(--space-6) 0; }

/* реквизиты и подобные списки определений */
.nc-info__body dl { margin: 0 0 var(--space-4); }
.nc-info__body dd { margin: 0 0 var(--space-2); }
.nc-info__body .spanc { display: inline-block; min-width: 190px; color: var(--color-neutral-400); }

/* таблицы условий */
.nc-info__body table { width: 100%; border-collapse: collapse; margin: 0 0 var(--space-5); font-size: 14px; }
.nc-info__body th, .nc-info__body td {
  padding: var(--space-3) var(--space-4); text-align: left; vertical-align: top;
  border-bottom: 1px solid var(--color-divider);
}
.nc-info__body th { color: var(--color-neutral-400); font-weight: 400; }

/* бутстрап-сетка старой темы: колонки превращаем в поток или свою сетку */
.nc-info__body .row { display: block; margin: 0; }
.nc-info__body [class*="col-"] { width: auto; float: none; padding: 0; }

/* блоки способов доставки/оплаты — карточками */
.nc-info__body .ms-block { margin-bottom: var(--space-6); }
.nc-info__body .ms-main,
.nc-info__body .ms-item,
.nc-info__body .pay-item,
.nc-info__body .vozvrat-block {
  border: 1px solid var(--color-divider); border-radius: var(--radius-lg);
  background: var(--color-surface); padding: var(--space-6); margin-bottom: var(--space-4);
}
.nc-info__body .ms-items {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--space-4); align-items: start;
}
.nc-info__body .ms-items .row { display: contents; }
.nc-info__body .ms-item-block { min-width: 0; }
.nc-info__body .ms-item { margin-bottom: 0; }

.nc-info__body .ms-main-head,
.nc-info__body .dost-desc-head {
  display: flex; align-items: center; gap: var(--space-4); margin-bottom: var(--space-4);
}
.nc-info__body .ms-main-head-icon img,
.nc-info__body .dost-head-icon img { width: 32px; height: 32px; }
.nc-info__body .ms-main-head-text,
.nc-info__body .dost-head-text { font-size: 18px; font-family: var(--font-heading); color: var(--color-text); }
.nc-info__body .ms-main-variant { margin: 0; padding-left: var(--space-5); }
.nc-info__body .dost-desc-text { color: var(--color-neutral-300); }

/* цена доставки и подобные акценты */
.nc-info__body .dost-price,
.nc-info__body .price-value { color: var(--color-accent-200); font-size: 17px; }

/* поле поиска города в калькуляторе доставки */
.nc-info__body input[type="text"],
.nc-info__body input[type="search"],
.nc-info__body select {
  width: 100%; max-width: 420px; min-height: 44px; padding: 8px 12px;
  font: inherit; font-size: 15px; color: var(--color-text);
  background: var(--color-bg); border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
}
.nc-info__body .btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 20px; cursor: pointer;
  font: inherit; font-size: 15px; font-family: var(--font-heading);
  background: transparent; color: var(--color-accent);
  border: 1px solid var(--color-accent); border-radius: var(--radius-md);
  text-decoration: none;
}
.nc-info__body .btn:hover { background: var(--color-accent-900); color: var(--color-accent-200); }

/* подсказки автодополнения города приходят от плагина со светлой темой */
.suggestions-suggestions {
  background: var(--color-surface) !important; color: var(--color-text) !important;
  border: 1px solid var(--color-divider) !important; border-radius: var(--radius-md) !important;
}
.suggestions-suggestion:hover,
.suggestions-suggestion.suggestions-selected {
  background: var(--color-accent-900) !important; color: var(--color-accent-200) !important;
}

@media (max-width: 767px) {
  .nc-info-head__title { font-size: 26px; }
  .nc-info__body { font-size: 15px; }
  .nc-info__body h2 { font-size: 21px; margin-top: var(--space-6); }
  .nc-info__body .ms-main,
  .nc-info__body .ms-item,
  .nc-info__body .pay-item,
  .nc-info__body .vozvrat-block { padding: 14px; border-radius: var(--radius-md); }
  .nc-info__body .ms-items { grid-template-columns: 1fr; }
  .nc-info__body .spanc { min-width: 0; display: block; }
  .nc-info__body table { display: block; overflow-x: auto; }
}

/* ── список брендов ─────────────────────────────────────────────── */

.nc-brands { display: grid; gap: var(--space-6); padding-bottom: 64px; }
.nc-brands__group { display: grid; grid-template-columns: 60px 1fr; gap: var(--space-5); align-items: start; }
.nc-brands__letter {
  font-size: 26px; font-family: var(--font-heading); color: var(--color-accent);
  line-height: 1.2;
}
.nc-brands__list { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-5); }
.nc-brands__item {
  display: inline-flex; align-items: center; min-height: 40px;
  color: var(--color-neutral-200); text-decoration: none; font-size: 15px;
}
.nc-brands__item:hover { color: var(--color-accent-200); }

@media (max-width: 767px) {
  .nc-brands__group { grid-template-columns: 40px 1fr; gap: var(--space-4); }
  .nc-brands__letter { font-size: 20px; }
  .nc-brands__item { min-height: 44px; }
}
