/* Category pages, Marketplace layout (tools/build_plp.py): a short aisle band, filter rail on the left, sort and a dense grid on the right. On c4.css and ca.css. Buttons are the site's pills, tiles 16px, inner tiles and filters 10px, 1px borders, spacing 8/16/24/32/48. */
.pl-page{--line:#e2d6bb;--r:var(--r-card);background:var(--cream);overflow-x:clip}
.pl-page h1{font:800 var(--h1-page)/1.02 "Roboto Slab",Georgia,serif;letter-spacing:-.02em;color:var(--g);margin:0;hyphens:manual;animation:none;text-wrap:balance;overflow-wrap:break-word}
.pl-page .ar{font-size:1.25em;line-height:1;font-family:Nunito,sans-serif;font-weight:800;text-transform:none;vertical-align:-1px}
.pl-page .crumbs{margin:0;padding:0 0 8px;color:var(--ac);font-size:13px}
.pl-page .ca-tb{display:none}
.pl-page .ca-more{display:none}
/* band */
.pl-page .pl-band{position:relative;padding:0;background:radial-gradient(ellipse 70% 60% at 70% 60%,rgba(255,255,255,.7),rgba(255,255,255,0) 70%),var(--bg);overflow:hidden}
.pl-bi{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:end;padding-top:88px}
.pl-tx{padding-bottom:24px}.pl-tx p{margin:8px 0 0;font-size:16px;line-height:24px;color:var(--ink);max-width:40em}
.pl-pks{position:relative;display:flex;justify-content:center;align-items:flex-end;height:160px}
.pl-pks img{height:100%;width:auto;max-width:44%;object-fit:contain;object-position:bottom;margin:0 -12px;filter:drop-shadow(0 12px 12px rgba(40,30,10,.25))}.pl-pks img:nth-child(2){position:relative;z-index:1;height:112%}.pl-pks img.sq{mix-blend-mode:multiply;filter:none}
/* rail and results */
.pl-g{display:grid;grid-template-columns:224px minmax(0,1fr);gap:32px;align-items:start;padding-top:24px;padding-bottom:64px}
.pl-rail{position:sticky;top:calc(var(--hh,74px) + 16px);max-height:calc(100dvh - var(--hh,74px) - 32px);overflow:auto;scrollbar-width:thin;padding-right:8px}
.pl-grp{border:0;margin:0;padding:0 0 16px}.pl-grp+.pl-grp{padding-top:16px;border-top:1px solid var(--line)}
.pl-grp.off{display:none}
.pl-grp h2,.pl-grp legend{float:left;width:100%;padding:0;margin:0 0 8px;font:600 12px/16px Oswald,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.pl-grp label{clear:both;display:flex;align-items:center;gap:8px;min-height:32px;font:600 15px/20px Nunito,sans-serif;color:var(--ink);cursor:pointer}
.pl-grp label em,.pl-ty em{margin-left:auto;font:700 13px Nunito,sans-serif;color:var(--soft);font-style:normal}
.pl-grp input{width:18px;height:18px;margin:0;accent-color:var(--leaf);flex:none}
.pl-ty{clear:both}.pl-ty a{display:flex;align-items:center;gap:8px;min-height:32px;font:600 15px/20px Nunito,sans-serif;color:var(--ink);text-decoration:none}
.pl-ty a:hover span{text-decoration:underline}.pl-ty a[aria-current] span{font-weight:800;color:var(--ac)}
.pl-page .pl-res{padding:0}
.pl-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}.pl-top p{margin:0;font:700 16px/24px Nunito,sans-serif;color:var(--ink)}
.pl-sort{display:flex;align-items:center;gap:8px;font:600 14px/20px Nunito,sans-serif;color:var(--soft);white-space:nowrap}
.pl-sort select{min-height:40px;padding:0 8px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:700 14px Nunito,sans-serif}
.pl-on{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.pl-on:empty{display:none}
.pl-on button{min-height:32px;padding:0 12px;border:1px solid var(--deep);border-radius:99px;background:color-mix(in srgb,var(--bg) 40%,#fff);font:700 13px Nunito,sans-serif;color:var(--ink);cursor:pointer}
.pl-on button:after{content:" ×";font-weight:800}.pl-on .clr{border-color:transparent;background:none;color:var(--ac)}.pl-on .clr:after{content:""}
.pl-empty{padding:48px 16px;text-align:center}.pl-empty p{margin:0 0 16px;font:800 20px/28px "Roboto Slab",Georgia,serif;color:var(--ink)}
.pl-open,.pl-sh,.pl-ft,.pl-bk{display:none}
html:not(.js) .pl-open,html:not(.js) .pl-sort,html:not(.js) fieldset.pl-grp{display:none}
/* cards */
.pl-gr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:8px}
.pl-c{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:8px 8px 12px;transition:box-shadow .15s}
.pl-c[hidden]{display:none}
.pl-c:hover{box-shadow:0 12px 20px -14px rgba(20,40,20,.45)}
.pl-t{display:block;text-decoration:none;color:var(--ink)}
.pl-t b{display:block;font:800 15px/20px Nunito,sans-serif;margin:8px 4px 0}.pl-t:hover b{color:var(--ac)}
.pl-i{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:10px;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.85),rgba(255,255,255,0) 62%),var(--bg);overflow:hidden}
.pl-i img{width:78%;height:82%;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(40,30,10,.2));transition:transform .3s cubic-bezier(.2,1.4,.4,1)}.pl-c:hover .pl-i img{transform:scale(1.05)}
.pl-i.sq img{filter:none;mix-blend-mode:multiply}
.pl-c small{display:block;margin:0 4px;font-size:13px;line-height:18px;color:var(--soft)}.pl-c small i{font-style:normal;display:block;color:var(--ac);font-weight:700}
.pl-tags{display:flex;flex-wrap:wrap;gap:4px;margin:0 4px}
.pl-tags span{font:600 12px/16px Oswald,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--bg);padding:2px 6px;border-radius:6px}
.pl-mini{margin:auto 4px 0;display:flex;align-items:center;justify-content:center;gap:4px;min-height:36px;border-radius:99px;background:var(--leaf);color:#fff;font:600 13px/1 Oswald,sans-serif;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;box-shadow:0 3px 0 var(--deep);transition:transform .12s,box-shadow .12s}
.pl-mini:hover{transform:translateY(1px);box-shadow:0 2px 0 var(--deep)}.pl-mini.alt{background:#fff;color:var(--ink);box-shadow:0 3px 0 var(--line),inset 0 0 0 1px var(--line)}
@media (max-width:1100px){.pl-gr{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){
.pl-bi{grid-template-columns:1fr;padding-top:64px}.pl-pks{display:none}
.pl-page .ca-tb{display:block}.pl-page .ca-more{display:block}
.pl-g{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:16px;padding-bottom:32px}
.pl-sh{display:flex}.pl-open{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--deep);border-radius:99px;background:#fff;font:600 15px/1 Oswald,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.pl-rail{position:fixed;left:0;right:0;top:auto;bottom:0;z-index:70;max-height:84dvh;overflow:auto;overscroll-behavior:contain;padding:0 16px;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -18px 40px -18px rgba(20,40,20,.5);transform:translateY(110%);visibility:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility .3s}
.pl-g.open .pl-rail{transform:none;visibility:visible}
.pl-sh{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:12px 0;background:#fff;font:800 20px "Roboto Slab",Georgia,serif;color:var(--ink);border-bottom:1px solid var(--line);margin-bottom:12px}
.pl-x{min-height:44px;padding:0 14px;border:0;border-radius:99px;background:var(--cream);font:600 14px Oswald,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer}
.pl-ft{position:sticky;bottom:0;display:block;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
.pl-show{width:100%;justify-content:center}
.pl-bk{position:fixed;inset:0;z-index:69;background:rgba(20,30,15,.45)}.pl-g.open .pl-bk{display:block}
.pl-rail .pl-grp:has(.pl-ty){display:none}.pl-rail .pl-grp:has(.pl-ty)+.pl-grp{border-top:0;padding-top:0}
.pl-rail label{min-height:44px}
.pl-gr{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pl-g>:last-child{padding-bottom:64px}
}

/* tab/he-polish 2026-11-04 */
.pl-mini{min-height:44px}
.pl-sort select{min-height:44px}
.pl-page .crumbs,.pl-page .ca-eb{color:color-mix(in srgb,var(--ac) 72%,#000)}
.pl-c small{font-size:14px}
.pl-grp label.off{opacity:.45;cursor:default}
