.products-page { background:#f3f1eb; color:#35291c; }
.products-header { display:flex; align-items:center; justify-content:space-between; padding:24px 40px; border-bottom:1px solid #35291c1c; }
.products-header nav { display:flex; gap:30px; }
.products-header nav a { color:inherit; text-decoration:none; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.products-header nav a[aria-current] { color:#947c2b; }
.products-page main { max-width:1600px; margin:auto; padding:0 40px 70px; }
.products-intro { padding:30px 0 22px; }
.products-intro>p { font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:#887b67; margin:0 0 12px; }
.products-intro h1 { font-size:clamp(40px,5vw,72px); font-weight:400; letter-spacing:-.055em; line-height:1; margin:0; }
#products-total { display:inline-block; font-size:12px; letter-spacing:0; vertical-align:top; padding:9px 0 0 14px; color:#887b67; }
.products-toolbar { display:flex; gap:24px; align-items:flex-start; justify-content:space-between; padding:20px 0 26px; border-top:1px solid #35291c26; }
#products-filters { display:flex; flex-wrap:wrap; gap:8px; }
#products-filters button { border:1px solid transparent; border-radius:3px; padding:8px 10px; background:transparent; color:#746a5b; font:400 12px 'DM Sans',sans-serif; cursor:pointer; transition:background .2s,color .2s; }
#products-filters button:hover { color:#35291c; background:#e8e2d6; }
#products-filters button[aria-pressed=true] { color:#f8f5ed; background:#352f24; }
#products-result { flex:none; font-size:10px; white-space:nowrap; color:#887b67; margin:9px 0; }
.products-box-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px 18px; }
.product-box { display:block; color:inherit; text-decoration:none; min-width:0; }
.product-box-frame { aspect-ratio:1; overflow:hidden; position:relative; background:#e5dfd3; border:1px solid #35291c18; border-radius:5px; }
.product-box-frame img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.product-box-frame.is-original { background:#fff; }
.product-box-frame.is-original img { object-fit:contain; padding:12px; box-sizing:border-box; }
.product-box:hover img { transform:scale(1.045); }
.product-box-frame span { position:absolute; bottom:10px; right:10px; width:27px; height:27px; display:grid; place-items:center; background:#f4f0e5dd; border-radius:50%; font-size:15px; opacity:0; transition:opacity .2s; }
.product-box:hover .product-box-frame span,.product-box:focus-visible .product-box-frame span { opacity:1; }
.product-box-copy { padding:12px 1px 0; }
.product-box-copy p { font-size:9px; letter-spacing:.1em; text-transform:uppercase; color:#887b67; margin:0 0 5px; }
.product-box-copy h2 { font-size:13px; line-height:1.4; font-weight:400; margin:0; }
.products-footer { padding:25px 40px; display:flex; justify-content:space-between; border-top:1px solid #35291c26; font-size:10px; letter-spacing:.06em; }
.products-page a:focus-visible,.products-page button:focus-visible { outline:2px solid #ad9234; outline-offset:4px; }
@media(max-width:1000px) { .products-toolbar { flex-direction:column; gap:0; padding:12px 0 18px; } }
@media(min-width:601px) and (max-width:700px) { .products-box-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .products-header { padding:18px; } .products-header nav { gap:14px; } .products-header nav a { font-size:9px; } .products-page main { padding:0 18px 40px; } .products-intro { padding-top:30px; } .products-box-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 12px; } #products-filters { gap:3px; } #products-filters button { font-size:11px; padding:7px; } .product-box-copy h2 { font-size:12px; } .products-footer { padding:22px 18px; } }
@media(prefers-reduced-motion:reduce) { .product-box-frame img { transition:none; } }
