/* ═══════════════════════════════════════════════════════════════════════
   NanoFarm · REFINED UI LAYER
   Единый строгий дизайн поверх styles.css. Шрифты и фирменные цвета не меняются —
   меняется «характер»: меньше скруглений и «таблеток», без мягких теней и
   свечений, тонкие линии и иконки, аккуратные подписи капсом.
   Подключается ПОСЛЕДНИМ (index.html). Селекторы начинаются с `html body`,
   чтобы перебивать старые слои без каскадных войн.
   ═══════════════════════════════════════════════════════════════════════ */

:root {
  --rf-r-card: 10px;
  --rf-r-ctl: 8px;
  --rf-r-chip: 4px;
  --rf-line: rgba(21, 21, 21, 0.09);
  --rf-line-strong: rgba(21, 21, 21, 0.16);
  --rf-accent: var(--nf-color-accent, #4da0a9);
  /* Чуть затемнённый фирменный бирюзовый (не #2a636d — тот пользователь отверг как «грязный зелёный») */
  --rf-accent-deep: color-mix(in srgb, #4da0a9 86%, #0b1f22 14%);
  --rf-text: var(--nf-color-text-primary, #151515);
  --rf-muted: var(--nf-color-muted, #6f7c79);
  --rf-hover-shadow: 0 14px 34px -22px rgba(16, 32, 36, 0.35);
  --rf-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* ── Тонкие линии у всех line-иконок (CSS перебивает атрибут stroke-width) ── */
html body svg [stroke-width="1.8"],
html body svg [stroke-width="2"] {
  stroke-width: 1.4;
}

/* ═════════════ ШАПКА ═════════════ */
html body .nf-header--ds .nf-header-logo-section .nf-logo {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
html body .nf-header--ds .nf-logo-img-header { border-radius: 0 !important; }

html body .nf-header--ds .nf-search {
  border-radius: var(--rf-r-ctl) !important;
  border: 1px solid var(--rf-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body .nf-header--ds .nf-search:focus-within {
  border-color: rgba(var(--nf-accent-rgb), 0.55) !important;
}

html body .nf-header--ds .nf-header-actions {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  gap: 14px !important;
}

/* RU / KZ / EN — текстовый переключатель с тонким подчёркиванием */
html body .nf-lang-switcher {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  gap: 0 !important;
  height: auto !important;
  align-items: center;
}
html body .nf-lang-switcher .nf-lang-btn {
  position: relative;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: 28px !important;
  min-width: 0 !important;
  padding: 0 8px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  color: var(--rf-muted) !important;
  transition: color 0.2s var(--rf-ease);
}
html body .nf-lang-switcher .nf-lang-btn + .nf-lang-btn::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 1px;
  background: var(--rf-line-strong);
}
html body .nf-lang-switcher .nf-lang-btn::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 2px;
  height: 1.5px;
  background: var(--rf-accent);
  transform: scaleX(0);
  transition: transform 0.25s var(--rf-ease);
}
html body .nf-lang-switcher .nf-lang-btn:hover { color: var(--rf-text) !important; }
html body .nf-lang-switcher .nf-lang-btn.nf-lang-btn-active { color: var(--rf-text) !important; }
html body .nf-lang-switcher .nf-lang-btn.nf-lang-btn-active::after { transform: scaleX(1); }

/* «Быстрый запрос цены» — строгая контурная кнопка */
html body #quickQuoteBtn,
html body .nf-mobile-menu__quick-quote {
  background: transparent !important;
  background-image: none !important;
  color: var(--rf-accent-deep) !important;
  border: 1px solid rgba(var(--nf-accent-rgb), 0.55) !important;
  border-radius: var(--rf-r-ctl) !important;
  box-shadow: none !important;
  height: 40px !important;
  padding: 0 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  transition: background-color 0.2s var(--rf-ease), color 0.2s var(--rf-ease), border-color 0.2s var(--rf-ease);
}
html body #quickQuoteBtn:hover,
html body .nf-mobile-menu__quick-quote:hover {
  background: var(--rf-accent) !important;
  border-color: var(--rf-accent) !important;
  color: #fff !important;
  transform: none !important;
}

/* Корзина и бургер — квадратные кнопки с тонкой рамкой */
html body .nf-header--ds .nf-header-icon-btn {
  width: 40px !important;
  height: 40px !important;
  border-radius: var(--rf-r-ctl) !important;
  border: 1px solid var(--rf-line) !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: none !important;
  color: var(--rf-text) !important;
  transition: border-color 0.2s var(--rf-ease);
}
html body .nf-header--ds .nf-header-icon-btn:hover {
  border-color: rgba(var(--nf-accent-rgb), 0.55) !important;
  transform: none !important;
}
html body .nf-header--ds .nf-cart-btn svg.nf-cart-line-icon {
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
}
html body .nf-header--ds .nf-cart-count {
  min-width: 16px !important;
  height: 16px !important;
  padding: 0 4px !important;
  border-radius: 3px !important;
  background: var(--rf-accent-deep) !important;
  background-image: none !important;
  box-shadow: 0 0 0 2px #fff !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 16px !important;
  top: -6px !important;
  right: -6px !important;
}

/* ═════════════ ГЛАВНЫЙ ЭКРАН ═════════════ */
html body .nf-hero--brand .nf-hero__years-pill {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  gap: 12px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
  color: var(--rf-accent-deep) !important;
}
html body .nf-hero--brand .nf-hero__years-pill__icon { display: none !important; }
html body .nf-hero--brand .nf-hero__years-pill::before {
  content: "";
  width: 28px;
  height: 1px;
  background: var(--rf-accent);
  flex: none;
}

html body .nf-hero--brand .nf-hero-btn {
  border-radius: var(--rf-r-ctl) !important;
  height: 50px !important;
  padding: 0 28px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  transform: none !important;
  transition: background-color 0.2s var(--rf-ease), border-color 0.2s var(--rf-ease), color 0.2s var(--rf-ease) !important;
}
html body .nf-hero--brand .nf-hero-btn::before,
html body .nf-hero--brand .nf-hero-btn::after { display: none !important; }
html body .nf-hero--brand .nf-hero-btn--primary {
  background: var(--rf-accent) !important;
  background-image: none !important;
  border: 1px solid var(--rf-accent) !important;
  box-shadow: none !important;
  color: #fff !important;
}
html body .nf-hero--brand .nf-hero-btn--primary:hover {
  background: var(--rf-accent-deep) !important;
  border-color: var(--rf-accent-deep) !important;
}
html body .nf-hero--brand .nf-hero__years-pill { color: var(--rf-accent) !important; }
html body .nf-hero--brand .nf-hero-btn--secondary {
  background: transparent !important;
  background-image: none !important;
  border: 1px solid var(--rf-line-strong) !important;
  box-shadow: none !important;
  color: var(--rf-text) !important;
}
html body .nf-hero--brand .nf-hero-btn--secondary:hover {
  border-color: var(--rf-accent) !important;
  color: var(--rf-accent-deep) !important;
}

/* ═════════════ ОБЩИЕ КНОПКИ И ССЫЛКИ СЕКЦИЙ ═════════════ */
html body .nf-home-section .nf-home-link-secondary.nf-home-link-secondary.nf-home-link-secondary,
html body .nf-home-link-secondary {
  border-radius: var(--rf-r-ctl) !important;
  background: transparent !important;
  background-image: none !important;
  border: 1px solid var(--rf-line-strong) !important;
  box-shadow: none !important;
  height: 40px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--rf-text) !important;
  transform: none !important;
}
html body .nf-home-section .nf-home-link-secondary.nf-home-link-secondary.nf-home-link-secondary:hover,
html body .nf-home-link-secondary:hover {
  border-color: var(--rf-accent) !important;
  color: var(--rf-accent-deep) !important;
}

html body .nf-btn {
  border-radius: var(--rf-r-ctl) !important;
  box-shadow: none !important;
  letter-spacing: 0.01em;
}
html body .nf-btn.nf-btn-primary {
  background: var(--rf-accent) !important;
  background-image: none !important;
  border: 1px solid var(--rf-accent) !important;
  color: #fff !important;
}
html body .nf-btn.nf-btn-primary:not(:disabled):hover {
  background: var(--rf-accent-deep) !important;
  border-color: var(--rf-accent-deep) !important;
  transform: none !important;
}
html body .nf-btn.nf-btn-secondary,
html body .nf-btn.nf-btn-ghost-dark {
  background: transparent !important;
  background-image: none !important;
  border: 1px solid var(--rf-line-strong) !important;
  color: var(--rf-text) !important;
}
html body .nf-btn.nf-btn-secondary:hover,
html body .nf-btn.nf-btn-ghost-dark:hover {
  border-color: var(--rf-accent) !important;
  color: var(--rf-accent-deep) !important;
}

html body .nf-popular__nav-btn {
  border-radius: var(--rf-r-ctl) !important;
  background: #fff !important;
  background-image: none !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
}
html body .nf-popular__nav-btn:hover { border-color: var(--rf-accent) !important; }

/* ═════════════ КАРТОЧКИ: единая основа ═════════════ */
html body .nf-pop-card,
html body .pfg-card,
html body .nf-pc,
html body .nf-hn-featured,
html body .news-featured-card,
html body .nf-about-audience-item,
html body .nf-about-value,
html body .nf-about-mission-note,
html body .nf-contact-card,
html body .nf-map-card,
html body .nf-contacts-hub,
html body .nf-contacts-info-extra,
html body .nf-prt {
  border-radius: var(--rf-r-card) !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body .nf-pop-card:hover,
html body .pfg-card:hover,
html body .pfg-card:focus-visible,
html body .nf-pc:hover,
html body .nf-hn-featured:hover,
html body .news-featured-card:hover,
html body .nf-contact-card:hover,
html body .nf-prt:hover,
html body .nf-prt:focus-visible {
  border-color: rgba(var(--nf-accent-rgb), 0.45) !important;
  box-shadow: var(--rf-hover-shadow) !important;
  transform: none !important;
}
html body .nf-about-value { background: #fff !important; background-image: none !important; }

/* Контейнер карусели «Популярная продукция» — без стеклянной подложки */
html body .nf-popular__viewport {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

/* Мало товаров — статичная сетка вместо бегущей ленты */
html body .nf-popular__viewport.nf-popular__viewport--static {
  overflow: visible !important;
  padding: 0 !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}
html body .nf-popular__track.nf-popular__track--static {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  transform: none !important;
  animation: none !important;
}
html body .nf-popular__track--static > .nf-pop-card {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
}
html body .nf-popular--static .nf-popular__nav-btn { display: none !important; }
html body .nf-popular__carousel-wrap.nf-popular--static { padding: 0 !important; }
html body .nf-popular__track.nf-popular__track--static { padding: 0 !important; }
html body .nf-popular__viewport.nf-popular__viewport--static { margin-top: 0 !important; }
html body .nf-popular--static::before,
html body .nf-popular--static::after,
html body .nf-popular__viewport--static::before,
html body .nf-popular__viewport--static::after { display: none !important; }
@media (max-width: 1100px) {
  html body .nf-popular__track.nf-popular__track--static { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 560px) {
  html body .nf-popular__track.nf-popular__track--static { grid-template-columns: 1fr !important; }
}

/* ═════════════ БЕЙДЖИ / ЧИПЫ / СТАТУСЫ ═════════════ */
html body .nf-pop-card__cat,
html body .nf-pc__status,
html body .nf-pc__popular,
html body .nf-ps__tag,
html body .news-featured-chip,
html body .news-page-hero-kicker,
html body .nf-map-card-badge,
html body .nf-pt-card__count,
html body .nf-hn-featured [class*="chip"],
html body .nf-hn-featured [class*="tag"],
html body .nf-nr-item [class*="tag"],
html body .nf-nr-item [class*="chip"],
html body .news-list [class*="chip"],
html body [class*="news"] [class*="__cat"] {
  border-radius: var(--rf-r-chip) !important;
  box-shadow: none !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  padding: 5px 7px 4px !important;
}
html body .nf-pop-card__cat,
html body .nf-pc__popular {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid var(--rf-line) !important;
  color: var(--rf-text) !important;
}

/* Статус наличия — подпись капсом с квадратным маркером, без «пузыря» */
html body .nf-pop-card__status,
html body .nf-pc__status {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
html body .nf-pop-card__status-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 1px !important;
  box-shadow: none !important;
  animation: none !important;
}
html body .nf-pc__status {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid var(--rf-line) !important;
}
html body .nf-pop-card__price,
html body .nf-pc__price {
  font-size: 12px !important;
  letter-spacing: 0.02em !important;
}

/* ═════════════ ПОПУЛЯРНАЯ ПРОДУКЦИЯ ═════════════ */
html body .nf-pop-card { background: #fff !important; overflow: hidden; }
html body .nf-pop-card__media { background: #fff !important; background-image: none !important; border-bottom: 1px solid var(--rf-line); }
html body .nf-pop-card__overlay {
  background: rgba(21, 21, 21, 0.04) !important;
  background-image: none !important;
}
html body .nf-pop-card__overlay-text {
  border-radius: var(--rf-r-ctl) !important;
  background: #fff !important;
  color: var(--rf-text) !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
html body .nf-pop-card__name { letter-spacing: -0.01em; }
html body .nf-pop-card__hint {
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: var(--rf-accent-deep) !important;
  border-top: 1px solid var(--rf-line);
  padding-top: 12px !important;
}

/* ═════════════ КАРТОЧКИ НАПРАВЛЕНИЙ (категории) ═════════════ */
html body .pfg-card {
  background: #fff !important;
  padding: 22px 22px 18px !important;
  animation: none !important;
  color: var(--rf-accent-deep) !important;
}
html body .pfg-card::before,
html body .pfg-card::after,
html body .pfg-card__bloom,
html body .pfg-card__thread { display: none !important; }
html body .pfg-card--tile { min-height: 0 !important; }

html body .pfg-card__head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 22px;
}
html body .pfg-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--rf-r-ctl);
  border: 1px solid var(--rf-line);
  color: var(--rf-accent-deep);
  transition: border-color 0.25s var(--rf-ease), background-color 0.25s var(--rf-ease);
}
html body .pfg-card__icon svg { display: block; }
html body .pfg-card:hover .pfg-card__icon {
  border-color: rgba(var(--nf-accent-rgb), 0.5);
  background: rgba(var(--nf-accent-rgb), 0.06);
}
html body .pfg-card__index {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: rgba(21, 21, 21, 0.32);
  font-variant-numeric: tabular-nums;
}
html body .pfg-card__name {
  color: var(--rf-text) !important;
  font-weight: 600 !important;
  font-size: 1.02rem !important;
  letter-spacing: -0.01em !important;
}
html body .pfg-card__desc { color: var(--rf-muted) !important; }
html body .pfg-card__footer {
  border-top: 1px solid var(--rf-line) !important;
  margin-top: 16px !important;
}
html body .pfg-card__count {
  color: var(--rf-muted) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
}
html body .pfg-card__cta {
  color: var(--rf-accent-deep) !important;
  font-size: 12.5px !important;
}

/* ═════════════ КАРТОЧКА ТОВАРА В КАТАЛОГЕ ═════════════ */
html body .nf-pc { background: #fff !important; overflow: hidden; }
html body .nf-pc__img-wrap {
  background: #fff !important;
  background-image: none !important;
  border-bottom: 1px solid var(--rf-line);
  border-radius: 0 !important;
}
html body .nf-pc__brand { color: var(--rf-accent-deep) !important; font-weight: 600 !important; }
html body .nf-pc__footer { border-top: 1px solid var(--rf-line) !important; }
html body .nf-pc__add {
  border-radius: var(--rf-r-ctl) !important;
  background: var(--rf-accent) !important;
  background-image: none !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}
html body .nf-pc__add:hover { background: var(--rf-accent-deep) !important; }
html body .nf-pc__more {
  border-radius: var(--rf-r-ctl) !important;
  border: 1px solid var(--rf-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body .nf-pc__more:hover { border-color: var(--rf-accent) !important; }

html body .nf-products-grid.nf-products-grid-mode {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap: 20px !important;
}
html body .nf-pc__price { white-space: nowrap; }
html body .nf-pc__footer { gap: 12px; }

/* Заголовки страниц — единый вес */
html body .nf-catalog-hub__h1,
html body .nf-partners-hero__title,
html body .news-page-title,
html body .nf-about-hero-title,
html body .nf-contacts-hero-title {
  font-weight: 650 !important;
  font-size: clamp(30px, 3.3vw, 42px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.035em !important;
}

/* Рейл направлений и тулбар каталога */
html body .nf-cat-rail__item { border-radius: 6px !important; }
html body .nf-toolbar-right,
html body .nf-select-menu { border-radius: var(--rf-r-ctl) !important; }
html body .nf-select-menu { box-shadow: 0 16px 36px -20px rgba(16, 32, 36, 0.4) !important; }
html body .nf-toolbar-view__btn,
html body .nf-view-switch-btn { border-radius: 6px !important; box-shadow: none !important; }
html body .nf-catalog-explorer__head,
html body section.nf-page-catalog { background-image: none !important; }

/* ═════════════ ПАРТНЁРЫ (главная + страница) ═════════════ */
html body .nf-prt-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100%;
}
html body .nf-prt {
  appearance: none;
  display: grid !important;
  grid-template-columns: 176px minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  width: 100%;
  min-height: 230px;
  padding: 0 !important;
  margin: 0;
  background: #fff !important;
  text-align: left;
  font: inherit;
  color: var(--rf-text);
  cursor: pointer;
  overflow: hidden;
  transition: border-color 0.25s var(--rf-ease), box-shadow 0.25s var(--rf-ease);
}
html body .nf-prt__logo {
  grid-row: 1 / span 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  border-right: 1px solid var(--rf-line);
  background: #fff;
}
html body .nf-prt__logo img {
  display: block;
  max-width: 100%;
  max-height: 84px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: none !important;
  opacity: 1 !important;
}
html body .nf-prt__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 26px 28px 18px;
  min-width: 0;
}
html body .nf-prt__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--rf-accent-deep);
}
html body .nf-prt__sep {
  width: 14px;
  height: 1px;
  background: var(--rf-line-strong);
}
html body .nf-prt__name {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.015em;
  color: var(--rf-text);
}
html body .nf-prt__desc {
  font-size: 14px;
  line-height: 1.6;
  color: var(--rf-muted);
}
html body .nf-prt__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 28px;
  border-top: 1px solid var(--rf-line);
}
html body .nf-prt__count {
  font-size: 12.5px;
  color: var(--rf-muted);
  font-variant-numeric: tabular-nums;
}
html body .nf-prt__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--rf-accent-deep);
}
html body .nf-prt__link svg { transition: transform 0.25s var(--rf-ease); }
html body .nf-prt:hover .nf-prt__link svg { transform: translateX(3px); }
html body .nf-prt:focus-visible { outline: 2px solid var(--rf-accent); outline-offset: 2px; }

/* Страница «Партнёры»: убираем атмосферный фон и пустой блок деталей */
html body .nf-partners-page__atmos { display: none !important; }
html body .nf-partner-detail:empty { display: none !important; }
html body .nf-partners-gallery { width: 100%; }

@media (max-width: 860px) {
  html body .nf-prt-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 560px) {
  html body .nf-prt { grid-template-columns: 1fr; grid-template-rows: auto 1fr auto; min-height: 0; }
  html body .nf-prt__logo { grid-row: auto; border-right: 0; border-bottom: 1px solid var(--rf-line); height: 120px; }
  html body .nf-prt__body { padding: 20px 20px 14px; }
  html body .nf-prt__foot { padding: 12px 20px; }
}

/* ═════════════ НОВОСТИ ═════════════ */
html body .nf-hn-featured { overflow: hidden; background: #fff !important; }
html body .nf-nr-item__arrow {
  border-radius: 6px !important;
  border: 1px solid var(--rf-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

html body header.news-page-hero {
  border-radius: 12px !important;
  box-shadow: none !important;
  border: 1px solid var(--rf-line) !important;
  background: #fff !important;
  background-image: none !important;
}
html body section.news-page { background-image: none !important; }
html body .news-search-input,
html body .news-sort-button {
  border-radius: var(--rf-r-ctl) !important;
  box-shadow: none !important;
  border: 1px solid var(--rf-line) !important;
}
html body .news-search-input:focus { border-color: rgba(var(--nf-accent-rgb), 0.55) !important; }
html body .news-category-chip {
  border-radius: 6px !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
html body .news-featured-card { background: #fff !important; overflow: hidden; }
html body .news-featured-media,
html body .news-featured-body { background-image: none !important; }
html body .news-featured-body { background: #fff !important; }

/* Модалка новости */
html body .nf-modal-news { border-radius: 12px !important; }

/* ═════════════ О КОМПАНИИ ═════════════ */
html body .nf-about-hero { border-radius: 0 !important; }
html body .nf-about-hero-aside { border-radius: var(--rf-r-card) !important; box-shadow: none !important; }
html body .nf-about-audience-item,
html body .nf-about-mission-note { background: #fff !important; }

/* ═════════════ КОНТАКТЫ ═════════════ */
html body .nf-contacts-hero { border-radius: var(--rf-r-card) !important; }
html body .contact-hero-media,
html body .contact-office-media { border-radius: var(--rf-r-card) !important; }
html body .nf-contact-card-icon {
  border-radius: var(--rf-r-ctl) !important;
  background: transparent !important;
  background-image: none !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  color: var(--rf-accent-deep) !important;
}
html body .nf-contact-card-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
html body .nf-contact-card-icon::before {
  content: "";
  width: 20px;
  height: 20px;
  background: currentColor;
  -webkit-mask: var(--rf-icon) center / contain no-repeat;
  mask: var(--rf-icon) center / contain no-repeat;
}
html body .nf-contact-card-phone .nf-contact-card-icon {
  --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a1 1 0 0 1-1 1A16 16 0 0 1 4 5a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
html body .nf-contact-card-email .nf-contact-card-icon {
  --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='1'/%3E%3Cpath d='m3.5 6 8.5 7 8.5-7'/%3E%3C/svg%3E");
}
html body .nf-contact-card-address .nf-contact-card-icon {
  --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21Z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
}
html body a.nf-btn,
html body a.nf-btn:hover { text-decoration: none !important; }

/* Декоративная плашка в шапке контактов — фирменный знак на тонкой сетке */
html body .contact-hero-media {
  background-color: #fff !important;
  background-image:
    url("img/nf-mark.svg"),
    linear-gradient(rgba(var(--nf-accent-rgb), 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--nf-accent-rgb), 0.07) 1px, transparent 1px) !important;
  background-size: 34% auto, 28px 28px, 28px 28px !important;
  background-position: center, -1px -1px, -1px -1px !important;
  background-repeat: no-repeat, repeat, repeat !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
}

/* Пустая декоративная плашка под картой — убираем */
html body .contact-office-media:empty { display: none !important; }

html body .nf-map-card-header { background-image: none !important; background: #fff !important; border-bottom: 1px solid var(--rf-line); }
html body .nf-map-card-body { background-image: none !important; }
html body .nf-map-card-open-link { border-radius: var(--rf-r-ctl) !important; box-shadow: none !important; border: 1px solid var(--rf-line) !important; }
html body .nf-contacts-tabs { border-radius: var(--rf-r-card) !important; }
html body .nf-tab-btn { border-radius: 6px !important; box-shadow: none !important; }
html body .nf-tab-btn.nf-tab-btn-active { box-shadow: inset 0 -2px 0 var(--rf-accent) !important; }
html body .nf-contacts-when { border-radius: var(--rf-r-card) !important; }

/* ═════════════ ФУТЕР ═════════════ */
html body .nf-footer-premium-glow { display: none !important; }
html body .nf-footer .nf-footer-logo {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  gap: 14px !important;
  width: auto !important;
}
html body .nf-footer .nf-logo-mark-img--footer-dark {
  width: 46px !important;
  height: auto !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
html body .nf-footer .nf-logo-title { letter-spacing: -0.01em; font-weight: 600 !important; }
html body .nf-footer .nf-logo-subtitle {
  letter-spacing: 0.16em !important;
  font-weight: 500 !important;
  opacity: 0.6;
}
html body .nf-footer-cta-panel {
  border-radius: var(--rf-r-card) !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}
html body .nf-footer-cta-btn {
  background: var(--rf-accent) !important;
  background-image: none !important;
  border-color: var(--rf-accent) !important;
}
html body .nf-footer-cta-btn:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: var(--rf-accent-deep) !important;
}
html body .nf-footer-col-heading {
  letter-spacing: 0.12em !important;
}
html body .footer-credit { letter-spacing: 0.02em; }

/* ═════════════ ОКНО ПАРТНЁРА ═════════════ */
html body .nf-modal-partner {
  box-shadow: 0 30px 80px -30px rgba(10, 20, 22, 0.45) !important;
  border: 1px solid var(--rf-line) !important;
  overflow: hidden;
}
html body .nf-pm-hero {
  background: #fff !important;
  background-image: none !important;
  border-bottom: 1px solid var(--rf-line) !important;
}
html body .nf-pm-hero__logo {
  border-radius: var(--rf-r-ctl) !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  background: #fff !important;
}
html body .nf-pm-title { letter-spacing: -0.02em !important; font-weight: 650 !important; }
html body .nf-pm-chip {
  background: transparent !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase;
  color: var(--rf-muted) !important;
}
html body .nf-pm-chip--count {
  border-color: rgba(var(--nf-accent-rgb), 0.45) !important;
  color: var(--rf-accent-deep) !important;
  background: rgba(var(--nf-accent-rgb), 0.06) !important;
}
html body .nf-pm-hero__actions .nf-btn { height: 42px !important; min-height: 0 !important; }
html body .nf-pm-toolbar { background: #fafbfb !important; background-image: none !important; border-bottom: 1px solid var(--rf-line); }
html body .nf-pm-toolbar__title {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
  color: var(--rf-muted) !important;
}
html body .nf-pm-search { border: 1px solid var(--rf-line) !important; background: #fff !important; }
html body .nf-pm-grid { background: #fafbfb !important; }
html body .nf-pm-card {
  border-radius: var(--rf-r-card) !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  background: #fff !important;
  overflow: hidden;
  transition: border-color 0.25s var(--rf-ease), box-shadow 0.25s var(--rf-ease);
}
html body .nf-pm-card:hover {
  border-color: rgba(var(--nf-accent-rgb), 0.45) !important;
  box-shadow: var(--rf-hover-shadow) !important;
  transform: none !important;
}
html body .nf-pm-card__img { background: #fff !important; border-bottom: 1px solid var(--rf-line); border-radius: 0 !important; }
html body .nf-pm-card__status {
  border-radius: var(--rf-r-chip) !important;
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid var(--rf-line) !important;
  box-shadow: none !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 5px 7px 4px !important;
  gap: 6px !important;
}
html body .nf-pm-card__status-dot { width: 6px !important; height: 6px !important; border-radius: 1px !important; box-shadow: none !important; animation: none !important; }
html body .nf-pm-card__cat { letter-spacing: 0.08em !important; }
html body .nf-pm-card__price { font-style: normal !important; font-size: 12px !important; color: var(--rf-muted) !important; }
html body .nf-pm-card__foot { border-top: 1px solid var(--rf-line); gap: 8px !important; }
html body .nf-pm-card__foot .nf-btn {
  height: 38px !important;
  min-height: 0 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
html body .nf-pm-card__open {
  background: #fff !important;
  border: 1px solid var(--rf-line-strong) !important;
  color: var(--rf-text) !important;
}
html body .nf-pm-card__open:hover { border-color: var(--rf-accent) !important; color: var(--rf-accent-deep) !important; }

/* ═════════════ МОДАЛКИ / ПАНЕЛИ (единые радиусы) ═════════════ */
html body .nf-modal-inner { border-radius: 12px !important; }
html body .nf-modal-close,
html body .nf-icon-btn { border-radius: var(--rf-r-ctl) !important; }
html body .nf-cart-panel { border-radius: 0 !important; }
html body .nf-pm-chip,
html body .nf-qq-chip { border-radius: var(--rf-r-chip) !important; }
html body .nf-input,
html body .nf-qq-input,
html body .nf-pm-search { border-radius: var(--rf-r-ctl) !important; box-shadow: none !important; }

/* мобильная шапка: место под кнопку темы */
@media (max-width: 480px) {
  html body .nf-header-inner { padding-left: 14px !important; padding-right: 14px !important; gap: 8px !important; }
  html body .nf-header-logo-section { min-width: 0 !important; flex: 0 1 auto !important; margin: 0 !important; }
  html body .nf-header-right { gap: 6px !important; flex: none !important; }
  html body .nf-header-right .nf-header-icon-btn { width: 38px !important; height: 38px !important; min-width: 38px !important; }
}
