/* Novosibirsk home only: the existing subject strip, with native disclosure. */
.nvs-assortment .nvs-family-roots { display: grid; grid-template-columns: minmax(0, 1fr); }
.nvs-assortment .nvs-family-roots > details { display: contents; }
.nvs-assortment .nvs-family-roots > details::details-content { display: contents; }
.nvs-assortment summary { cursor: pointer; list-style: none; }
.nvs-assortment summary::-webkit-details-marker { display: none; }
.nvs-assortment summary:focus-visible,
.nvs-assortment a:focus-visible,
.nvs-assortment button:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.nvs-assortment .nvs-family-roots > details > summary {
  display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 8px 16px;
  min-height: 140px; padding: 16px 0; align-content: center;
  border-top: 1px solid var(--line);
}
.nvs-assortment .nvs-family-photo { grid-row: 1 / 4; position: relative; overflow: hidden; height: 104px; align-self: center; }
.nvs-assortment .nvs-family-photo img { position: absolute; width: 300%; max-width: none; height: 100%; object-fit: cover; }
.nvs-assortment .nvs-family-photo--1 img { left: 0; }
.nvs-assortment .nvs-family-photo--2 img { left: -100%; }
.nvs-assortment .nvs-family-photo--3 img { left: -200%; }
.nvs-assortment .nvs-family-copy { display: grid; gap: 6px; min-width: 0; }
.nvs-assortment .nvs-family-copy strong { color: var(--blue); font-size: 18px; line-height: 1.3; }
.nvs-assortment .nvs-family-copy > span { color: var(--muted); font-size: 13px; line-height: 1.5; }
.nvs-assortment .nvs-family-count { grid-column: 2; font-size: 12px; font-variant-numeric: tabular-nums; color: var(--muted); }
.nvs-assortment .nvs-family-action { grid-column: 2; display: flex; gap: 10px; align-items: center; color: var(--blue); font-size: 13px; font-weight: 750; }
.nvs-assortment .nvs-family-action svg { width: 18px; height: 18px; transition: transform .18s; }
.nvs-assortment .when-open { display: none; }
.nvs-assortment [open] > summary .when-open { display: inline; }
.nvs-assortment [open] > summary .when-closed { display: none; }
.nvs-assortment [open] > summary .nvs-family-action svg { transform: rotate(180deg); }
.nvs-assortment .nvs-family-panel { grid-column: 1 / -1; min-width: 0; padding: 12px; background: var(--stone); margin-bottom: 14px; }
.nvs-assortment .nvs-family-roots > details:not([open]) > .nvs-family-panel { display: none; }
.nvs-assortment .nvs-family-panel summary { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
.nvs-assortment .nvs-family-panel summary > span:first-child { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.nvs-assortment .nvs-family-panel summary small { flex-shrink: 0; font-size: 12px; font-variant-numeric: tabular-nums; color: var(--muted); }
.nvs-assortment .chevron { width: 9px; height: 9px; flex-shrink: 0; margin-right: 5px; border-right: 2px solid var(--blue); border-bottom: 2px solid var(--blue); transform: rotate(45deg); }
.nvs-assortment .nvs-family-panel [open] > summary > .chevron { transform: rotate(225deg); }
.nvs-assortment .nvs-family-panel .category-node { margin-left: 10px; }
.nvs-assortment .nvs-family-panel > .category-node { margin-left: 0; }
.nvs-assortment .category-products ul { list-style: none; padding: 0; margin: 10px 0; }
.nvs-assortment .category-products a { display: flex; align-items: center; min-height: 44px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 13px; color: var(--blue); overflow-wrap: anywhere; }
.nvs-assortment .category-progress { font-size: 12px; color: var(--muted); }
.nvs-assortment .category-more { min-height: 44px; border: 1px solid var(--blue); border-radius: 4px; padding: 8px 14px; background: white; color: var(--blue); font-weight: 700; font-size: 13px; }
@media (min-width: 1101px) {
  .nvs-assortment .nvs-family-roots { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .nvs-assortment .nvs-family-roots > details > summary { grid-row: 1; grid-template-columns: 96px minmax(0, 1fr); min-height: 144px; padding: 10px 22px; gap: 5px 18px; }
  .nvs-assortment .nvs-family-roots > details:nth-child(1) > summary { grid-column: 1; padding-left: 0; }
  .nvs-assortment .nvs-family-roots > details:nth-child(2) > summary { grid-column: 2; }
  .nvs-assortment .nvs-family-roots > details:nth-child(3) > summary { grid-column: 3; padding-right: 0; }
  .nvs-assortment .nvs-family-panel { padding: 20px 24px; }
  .nvs-assortment .category-products ul { columns: 2; column-gap: 32px; }
  .nvs-assortment .category-products li { break-inside: avoid; }
}
@media (hover: hover) {
  .nvs-assortment summary:hover .nvs-family-copy strong,
  .nvs-assortment .category-products a:hover { text-decoration: underline; text-underline-offset: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .nvs-assortment .nvs-family-action svg { transition: none; }
}
