.npk-property {
  background: linear-gradient(180deg, #f5f4ee 0%, #fff 46%);
  padding-top: clamp(32px, 4vw, 72px);
}
.npk-property__eyebrow { margin-bottom: 12px; color: var(--npk-gold-dark, #9b6a1b); font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.npk-property .products__object-title { max-width: 1040px; margin-bottom: clamp(28px, 3vw, 50px); color: #15201b; }
.npk-property .products__item { overflow: hidden; border: 1px solid rgba(18,28,24,.12); border-radius: 24px; background: #fff; box-shadow: 0 24px 64px rgba(18,28,24,.1); }
.npk-property .item-img-block img { border-radius: 12px; }
.npk-property .item-info-block { background: #18201c; color: #fff; }
.npk-property .info-title { color: #fff; }
.npk-property .order-btn,
.npk-property .free-call-btn { border: 0; font: inherit; cursor: pointer; }
.npk-property .order-btn { background: var(--npk-gold, #cfa456); color: #111714; }
.npk-property .order-btn:focus-visible,
.npk-property .free-call-btn:focus-visible,
.npk-property a:focus-visible { outline: 3px solid rgba(207,164,86,.5); outline-offset: 4px; }
.npk-property__description { max-width: 860px; padding: clamp(36px, 5vw, 80px) 0; color: #303a35; font-size: clamp(16px, 1.05vw, 20px); line-height: 1.75; }
.npk-property__section-title { padding-top: 40px; margin-bottom: 18px; color: #15201b; font-size: clamp(26px, 2.4vw, 44px); }
.npk-property__map { width: 100%; height: min(56vw, 520px); min-height: 360px; margin-bottom: clamp(40px, 6vw, 90px); overflow: hidden; border-radius: 20px; box-shadow: 0 18px 50px rgba(18,28,24,.1); }
@media (max-width: 768px) {
  .npk-property { padding-top: 28vw; }
  .npk-property .products__item { border-radius: 16px; }
  .npk-property__map { min-height: 320px; border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) { .npk-property * { transition-duration: .01ms !important; } }

/* Блок «Другие объекты раздела» (template-parts/catalog-related.php) */
.npk-related { padding: 8px 0 56px; }
.npk-related__list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin: 0 0 28px; padding: 0; list-style: none; }
.npk-related__link { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid rgba(18, 28, 24, 0.12); border-radius: 16px; background: #fff; color: #15201b; text-decoration: none; box-shadow: 0 12px 32px rgba(18, 28, 24, 0.06); transition: transform 200ms ease, box-shadow 200ms ease; }
.npk-related__link:hover, .npk-related__link:focus-visible { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(18, 28, 24, 0.12); }
.npk-related__img { display: block; aspect-ratio: 4 / 3; background: #e8e4d9; overflow: hidden; }
.npk-related__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.npk-related__name { display: block; padding: 14px 16px 4px; font-size: 16px; font-weight: 600; line-height: 1.3; }
.npk-related__meta { display: block; padding: 0 16px 16px; color: #5b6660; font-size: 14px; }
.npk-related__all { display: inline-flex; align-items: center; min-height: 48px; padding: 0 26px; border-radius: 999px; background: var(--npk-gold, #cfa456); color: #111714; font-weight: 650; text-decoration: none; }
.npk-related__all:hover { filter: brightness(1.05); }
@media (max-width: 1023px) { .npk-related__list { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .npk-related__list { gap: 12px; } .npk-related__name { font-size: 15px; padding: 10px 12px 4px; } .npk-related__meta { padding: 0 12px 12px; font-size: 13px; } }
