.products-shell{padding:80px 0 96px;background:var(--brand-bg-alt)}.products-layout{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:40px;gap:40px;align-items:start}.products-sidebar{position:sticky;top:112px;background:#fff;border:1px solid var(--brand-border);padding:24px}.products-sidebar h2{font-size:1rem;text-transform:uppercase;letter-spacing:.08em}.products-sidebar a{display:block;padding:10px 0;border-bottom:1px solid var(--brand-border);color:var(--brand-text);font-weight:700}.products-content{background:#fff;border:1px solid var(--brand-border);padding:40px}.products-intro h1{font-size:max(2rem, min(4vw, 3.5rem))}.products-intro p{max-width:720px}.product-category{padding-top:42px;margin-top:34px;border-top:1px solid var(--brand-border)}.category-desc{max-width:720px}.dynamic-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:22px;gap:22px;margin-top:22px}.dynamic-product-grid:has(> :nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}.dynamic-product-card{border:1px solid var(--brand-border);background:#fff;padding:16px;transition:transform 180ms,box-shadow 180ms}.dynamic-product-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(22,32,43,.1)}.product-image-frame{display:block;background:var(--brand-neutral-light);aspect-ratio:4/3;margin-bottom:16px}.product-image-frame img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.product-card-copy h3{font-size:1.05rem}.product-card-copy span{color:var(--brand-primary);font-weight:700;font-size:.9rem}.dynamic-product-card .btn{width:100%;margin-top:16px}@media (max-width:991px){.products-layout{grid-template-columns:1fr}.products-sidebar{position:static}.products-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 20px;gap:8px 20px}.dynamic-product-grid:has(> :nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:575px){.products-content{padding:24px}.dynamic-product-grid,.dynamic-product-grid:has(> :nth-child(4):last-child),.products-sidebar nav{grid-template-columns:1fr}}