.np-products .np-product-grid-fixed{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;grid-auto-flow:row!important}
.np-products .np-product-grid-fixed>.np-product-card{grid-column:auto!important;grid-row:auto!important;width:auto!important;min-width:0!important;min-height:330px!important;height:auto!important;display:flex!important;flex-direction:column!important;align-self:stretch!important;padding:14px!important;gap:8px!important;transition:transform .18s,box-shadow .18s}
.np-products .np-product-grid-fixed>.np-product-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(6,68,52,.11)}
.np-product-grid-fixed .np-product-img{height:155px!important;min-height:155px!important;display:grid!important;place-items:center!important;background:#f6faf8;border-radius:10px}
.np-product-grid-fixed .np-product-name{line-height:1.35;min-height:36px}
.np-product-grid-fixed .np-product-meta{font-size:11px;color:#708279}
.np-product-grid-fixed .np-price{margin-top:auto}
.np-product-grid-fixed form{margin-top:0!important}
.np-nav-categories{position:relative;flex:0 0 auto;align-self:stretch;z-index:25}
.np-nav-categories>summary{display:flex;align-items:center;cursor:pointer;list-style:none;padding:0 16px;height:100%;font-weight:700;white-space:nowrap;background:#08765b;color:#fff}
.np-nav-categories>summary::-webkit-details-marker{display:none}
.np-nav-categories[open]>summary{background:#0b8464}
.np-nav-menu{position:absolute;top:100%;left:0;width:min(300px,88vw);max-height:70vh;overflow-y:auto;display:flex;flex-direction:column;background:white;color:#0a4637;box-shadow:0 15px 35px #002c2240;border:1px solid #dceae3;border-radius:0 0 12px 12px;padding:8px;z-index:60}
.np-nav-menu a{display:block!important;padding:12px 14px!important;color:#0a4637!important;font-size:13px!important;border-radius:7px;white-space:normal}
.np-nav-menu a:hover{background:#eaf5ee}
.np-catalog-categories{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 8px}
.np-catalog-categories a{border:1px solid #d9e8e0;border-radius:999px;padding:9px 14px;font-size:13px;color:#075b46;background:#f8fbf9}
.np-catalog-categories a:hover{background:#e1f4e9}
.np-hero,.np-category-row,.np-promos,.np-products,.np-popular-categories{max-width:1440px}

/* Product Card Top Bar: Badges & Favorite Heart */
.np-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    min-height: 26px;
}
.np-tag-discount {
    background: #e03131 !important;
    color: #fff !important;
    font-weight: 800 !important;
    border-radius: 6px !important;
    padding: 3px 8px !important;
    font-size: 11px !important;
}
.np-tag-popular {
    background: #1971c2 !important;
    color: #fff !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    padding: 3px 8px !important;
    font-size: 11px !important;
}
.np-fav-btn {
    margin-left: auto;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #dce9e3;
    background: #fff;
    color: #7b9087;
    font-size: 15px;
    line-height: 1;
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: all .15s;
}
.np-fav-btn:hover, .np-fav-btn.is-fav {
    color: #e03131;
    border-color: #ffc9c9;
    background: #fff5f5;
}
.np-product-stars {
    color: #f59f00;
    font-size: 12px;
    letter-spacing: 1px;
}
.np-product-stars span {
    color: #82968d;
    font-size: 11px;
    letter-spacing: 0;
}
.np-tabs a.is-active {
    background: #075b46 !important;
    color: #fff !important;
    border-color: #075b46 !important;
}

/* Header Actions: Favorites & Cart Total MDL */
[hidden], .np-fav-badge[hidden] {
    display: none !important;
}
.np-actions {
    display: flex;
    align-items: center;
    gap: 14px;
}
.np-action-cart small, .np-action-fav small {
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1.2;
    gap: 2px;
}
.np-cart-sum {
    font-style: normal;
    font-weight: 800;
    color: #075b46;
    font-size: 11.5px;
    white-space: nowrap;
}
.np-fav-badge {
    display: inline-block;
    align-self: center;
    min-width: 22px;
    text-align: center;
    background: #e03131 !important;
    color: #fff !important;
    border-radius: 999px;
    padding: 2px 7px;
    font-size: 11px;
    font-weight: 800;
}

/* Bottom Popular Categories Section (from Approved Mockup) */
.np-popular-categories {
    margin: 34px auto 16px;
}
.np-popular-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 14px;
}
.np-pop-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 22px 20px;
    border-radius: 18px;
    border: 1px solid #dcebe4;
    text-decoration: none;
    color: #0d3b2e;
    transition: transform .18s, box-shadow .18s;
}
.np-pop-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(7, 68, 52, 0.1);
}
.np-pop-card h3 {
    margin: 0 0 8px;
    font-size: 17px;
    color: #083a2d;
}
.np-pop-link {
    font-size: 13px;
    font-weight: 700;
    color: #08765b;
}
.np-pop-art {
    font-size: 38px;
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.72);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}
.np-pop-cold { background: linear-gradient(135deg, #e8f6f0, #f7fcfa); }
.np-pop-allergy { background: linear-gradient(135deg, #fff6e5, #fffdf8); }
.np-pop-digest { background: linear-gradient(135deg, #edf8ec, #f9fdf9); }
.np-pop-skin { background: linear-gradient(135deg, #f5eefb, #fcfaff); }

/* Product Page Breadcrumbs & Trust Strip */
.np-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    font-size: 13px;
    color: #677e74;
}
.np-breadcrumbs a { color: #086b56; text-decoration: none; font-weight: 600; }
.np-product-cat-pill {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    background: #e6f5ee;
    color: #075b46;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 8px;
}
.np-trust-strip {
    display: grid;
    gap: 8px;
    margin: 18px 0;
    padding: 14px 16px;
    border-radius: 14px;
    background: #f4faf7;
    border: 1px solid #d9ebe2;
    font-size: 13px;
    color: #164437;
}
.np-card-brands {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 6px;
    background: #e7f5ff;
    color: #1864ab;
    font-size: 11px;
    font-weight: 800;
}
.np-related-section { margin-top: 42px; }

@media(max-width:1150px){
    .np-products .np-product-grid-fixed{grid-template-columns:repeat(4,minmax(0,1fr))!important}
    .np-popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){.np-products .np-product-grid-fixed{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:650px){
    .np-products .np-product-grid-fixed{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
    .np-products .np-product-grid-fixed>.np-product-card{padding:10px!important;min-height:290px!important}
    .np-product-grid-fixed .np-product-img{height:120px!important;min-height:120px!important}
    .np-popular-grid{grid-template-columns:1fr}
    .np-nav-categories>summary{padding:0 12px}
    .np-nav-menu{position:fixed;top:auto;left:12px;max-height:60vh}
}
.np-header .nav-bar { position: relative; z-index: 30; }
.np-header .np-nav-categories { position: static; }
.np-header .np-nav-menu {
    position: absolute;
    top: 100%;
    left: max(12px, calc((100% - 1440px) / 2));
    max-height: min(60vh, 440px);
}
.np-footer-contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}
.site-footer .np-fc-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.09);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: #e9f7f2 !important;
    font-size: 12.5px;
    font-weight: 700;
    text-decoration: none;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.site-footer .np-fc-chip:hover {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.35);
    transform: translateY(-1px);
}
.site-footer .np-fc-viber {
    background: rgba(115, 96, 242, 0.25);
    border-color: rgba(154, 140, 255, 0.45);
    color: #f3f0ff !important;
}
.site-footer .np-fc-viber:hover {
    background: rgba(115, 96, 242, 0.42);
    border-color: #a594ff;
}
.site-footer .footer-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.np-footer-pay-badges {
    display: inline-flex;
    gap: 6px;
    align-items: center;
}
.np-footer-pay-badges span {
    padding: 3px 9px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.16);
    font-size: 11px;
    font-weight: 800;
    color: #d6ede4;
    letter-spacing: .03em;
}
