.plp-page{min-height:100vh;padding-bottom:var(--spacing-xxl)}.plp-hero{padding:var(--spacing-xxl) 0;border-bottom:1px solid #0000000d;position:relative;overflow:hidden}.plp-title{font-family:var(--font-display);text-transform:uppercase;margin-bottom:var(--spacing-sm);font-size:clamp(3rem,6vw,5rem);line-height:1}.plp-subtitle{opacity:.8;font-size:1.125rem;font-weight:500}.plp-controls{padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-sandstone);margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.plp-count{font-family:var(--font-body);letter-spacing:.1em;font-size:.875rem;font-weight:700}.filter-panel{gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);background-color:#ffffff80;border:1px solid #0000;grid-template-columns:1fr;max-height:0;transition:max-height .4s ease-out,padding .4s ease-out;display:grid;overflow:hidden}.filter-panel.open{max-height:500px;padding:var(--spacing-lg);border-color:var(--color-sandstone)}.filter-group{flex-direction:column;display:flex}.filter-title{font-family:var(--font-body);letter-spacing:.1em;color:var(--color-burgundy);margin-bottom:var(--spacing-sm);font-size:.875rem;font-weight:700}.filter-options{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.filter-btn{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-sandstone);color:var(--color-cocoa);cursor:pointer;background:0 0;font-size:.875rem;transition:all .2s}.filter-btn:hover{border-color:var(--color-cocoa)}.filter-btn.active{background:var(--color-cocoa);color:var(--color-ivory);border-color:var(--color-cocoa)}.plp-grid{grid-template-columns:repeat(2,1fr);gap:clamp(10px,2vw,20px);display:grid}@media (min-width:640px){.plp-grid{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr)}}@media (min-width:960px){.plp-grid{gap:var(--spacing-md);grid-template-columns:repeat(4,1fr)}.filter-panel{grid-template-columns:repeat(3,1fr)}}@media (min-width:1200px){.plp-grid{gap:var(--spacing-lg);grid-template-columns:repeat(5,1fr)}}
