.ni-archive { padding: 100px 0; }
.ni-archive-layout { display: grid; grid-template-columns: 370px minmax(0,1fr); gap: 48px; align-items: start; }
.ni-category-menu { border: 1px solid #dee4eb; border-radius: 8px; overflow: hidden; background: #f7f9fb; }
.ni-category-menu :is(h2,:where(.ni-seo-h2)) { font-size: 24px; padding: 28px 26px 12px; margin: 0; }
.ni-category-menu a { display: flex; gap: 12px; justify-content: space-between; padding: 18px 26px; font-size: 18px; border-top: 1px solid #e5e8eb; }
.ni-category-menu ul { list-style: none; margin: 0; padding: 0; }
.ni-category-menu .children { display: none; background: #fff; }
.ni-category-menu .current-cat > .children,
.ni-category-menu .current-cat-ancestor > .children,
.ni-category-menu > ul:not(:has(.current-cat)) > li:first-child > .children { display: block; }
.ni-category-menu > ul > .current-cat > a,
.ni-category-menu > ul > .current-cat-ancestor > a,
.ni-category-menu > ul:not(:has(.current-cat)) > li:first-child > a { color: var(--brand); background: #fae8ee; }
.ni-category-menu .children a { min-height: 44px; padding: 12px 26px 12px 42px; font-size: 16px; line-height: 1.5; border-right: 0; white-space: normal; }
.ni-category-menu .children .children a { padding-left: 56px; }
.ni-category-menu > ul > li > a::after { content: '→'; }
.ni-category-menu > ul > li:has(> .children):is(.current-cat, .current-cat-ancestor) > a::after,
.ni-category-menu > ul:not(:has(.current-cat)) > li:first-child:has(> .children) > a::after { transform: rotate(90deg); }
.ni-category-menu a:hover { color: var(--brand); background: #fae8ee; }
.ni-category-menu a:focus-visible { outline: 2px solid var(--brand); outline-offset: -3px; }
.ni-category-menu .children .current-cat > a { color: var(--brand); background: #fae8ee; box-shadow: inset 3px 0 var(--brand); font-weight: 600; }
@media(prefers-reduced-motion:no-preference) { .ni-category-menu a { transition: color .2s ease, background-color .2s ease; } }
.ni-sidebar-contact { margin-top: 16px; position: relative; min-height: 310px; overflow: hidden; border-radius: 8px; color: #fff; background: #303030; }
.ni-sidebar-contact > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .45; }
.ni-sidebar-contact > div { padding: 32px 28px; position: relative; }
.ni-sidebar-contact :is(h3,:where(.ni-seo-h3)) { font-size: 30px; }
.ni-sidebar-contact p:where(:not(.ni-seo-h3)) { font-size: 16px; }
.ni-archive-content { min-width: 0; }
.ni-sidebar { min-width: 0; }
.ni-archive-layout > * { max-width: 100%; }
.ni-archive-content > :is(h2,:where(.ni-seo-h2)) { font-size: 42px; line-height: 1.25; margin-bottom: 16px; }
.ni-archive-intro { font-size: 19px; color: #666c73; max-width: 900px; margin-bottom: 28px; }
.ni-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.ni-product-card { background: #303030; padding: 14px; color: #fff; min-width: 0; display: flex; flex-direction: column; }
.ni-card-image { display: block; overflow: hidden; background: #f3f5f7; aspect-ratio: 347/260; }
.ni-card-image img { width: 100%; height: 100%; object-fit: cover; }
.ni-card-copy { position: relative; padding: 20px 45px 4px 0; flex: 1; display: flex; flex-direction: column; align-items: start; }
.ni-card-copy .ni-eyebrow { font-size: 14px; line-height: 1.25; margin-bottom: 6px; }
.ni-card-copy :is(h3,:where(.ni-seo-h3)) { font-size: 21px; line-height: 1.25; margin: 0 0 12px; color: #fff; font-weight: 600; }
.ni-card-copy > p:not(.ni-eyebrow) { font-size: 16px; line-height: 1.4; color: #d4d4d4; margin-bottom: 20px; }
.ni-card-copy .ni-button { margin-top: auto; padding: 10px 14px; font-size: 15px; gap: 10px; }
.ni-brand-label { position: absolute; right: 0; bottom: 24px; writing-mode: vertical-rl; font-weight: 700; font-size: 36px; color: #e1e4e7; text-transform: uppercase; line-height: 1; }
.ni-pagination { display: flex; gap: 12px; justify-content: center; padding-top: 28px; }
.ni-pagination .page-numbers { min-width: 44px; min-height: 44px; display: grid; place-items: center; padding: 8px; border: 1px solid #dce0e4; }
.ni-pagination .current { background: var(--brand); border-color: var(--brand); color: white; }
@media(max-width:1439px) { .ni-archive-layout { grid-template-columns: 280px minmax(0,1fr); gap: 32px; }
 .ni-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 }
@media(max-width:1199px) { .ni-archive { padding-block: 64px; }
 .ni-archive-layout { grid-template-columns: 230px minmax(0,1fr); gap: 24px; }
 .ni-archive-content > :is(h2,:where(.ni-seo-h2)) { font-size: 32px; }
 .ni-category-menu a { padding: 16px; font-size: 16px; }
 .ni-sidebar-contact > div { padding: 24px 18px; }
 }
@media(max-width:767px) { .ni-archive { padding-block: 40px; }
 .ni-archive-layout { grid-template-columns: 1fr; }
 .ni-sidebar-contact { display: none; }
 .ni-category-menu { display: flex; overflow-x: auto; border-radius: 0; }
 .ni-category-menu > ul { flex: 1; min-width: 0; }
 .ni-category-menu :is(h2,:where(.ni-seo-h2)) { display: none; }
 .ni-category-menu a { flex: 0 0 auto; border-top: 0; border-right: 1px solid #dee4eb; padding: 14px 16px; white-space: nowrap; }
 .ni-product-grid { grid-template-columns: 1fr; }
 .ni-archive-intro { font-size: 16px; }
 .ni-card-copy { min-height: 200px; }
 }

.ni-category-menu>.ni-seo-h2{line-height:1.3}

@media(max-width:767px){
 .ni-archive .ni-card-copy{padding-top:20px;gap:12px;min-height:0}
 .ni-archive .ni-card-copy>*{margin:0}
 .ni-archive .ni-card-copy h3{font-size:22px;line-height:1.3}
}
