*{box-sizing:border-box}body{margin:0;color:#27231e;background:#fbfaf7;font:16px/1.5 system-ui,sans-serif}button,input,select{font:inherit}button,.cta{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b84c14;outline-offset:3px}button{border:1px solid #dfd8cf;background:#fff;color:inherit;padding:.58rem .85rem;border-radius:.65rem}button:disabled{opacity:.48;cursor:default}a{color:inherit}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}header{background:#fff;border-bottom:1px solid #eae4dc}.bar,.title,.dialog-head,#summary p{display:flex;align-items:center;justify-content:space-between;gap:12px}.bar{min-height:72px}.brand{font-weight:900;letter-spacing:-.06em;font-size:1.55rem;text-decoration:none}.brand span{color:#ac441d}.dark{background:#29221d;color:#fff;border:1px solid #29221d}.dark:hover{background:#49352a}.dark b{margin-left:.35rem;color:#ffb582}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;margin:28px 0 36px;padding:clamp(20px,4vw,56px);min-height:320px;background:#ffdfc2;border-radius:24px;overflow:hidden}.hero small{color:#843216;letter-spacing:.14em;font-weight:800}.hero h1{font-size:clamp(2.25rem,6vw,4.9rem);line-height:1.02;letter-spacing:-.075em;margin:.2em 0}.hero p{margin-bottom:24px}.hero canvas{width:100%;height:auto}.cta{display:inline-block;border-radius:.65rem;padding:.65rem .95rem;text-decoration:none}h2{font-size:1.75rem;margin:.4rem 0}.title span{color:#675e54}.filters{display:grid;grid-template-columns:2fr 1.35fr 1fr 1.4fr auto;gap:12px;align-items:end;margin:16px 0 24px}.filters label{font-size:.82rem;font-weight:700;min-width:0}.filters input,.filters select{width:100%;display:block;margin-top:4px;border:1px solid #dfd8cf;background:white;border-radius:.65rem;padding:.56rem;color:inherit}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px}.card{border:1px solid #eae4dc;border-radius:16px;overflow:hidden;background:white}.card canvas{display:block;width:100%;height:auto}.body{padding:14px}.body small{color:#745743}.body h3{margin:4px 0 12px;font-size:1rem}.card-bottom{display:flex;justify-content:space-between;gap:6px;align-items:center}.card-bottom button{padding:.4rem .6rem}.empty{padding:20px 0;color:#675e54}footer{border-top:1px solid #eae4dc;margin-top:40px;padding:22px 0;color:#675e54;font-size:.9rem}dialog{margin:auto 0 auto auto;height:100%;max-height:100%;width:min(100%,440px);max-width:100%;border:0;background:#fbfaf7;color:inherit;padding:22px;overflow:auto}dialog::backdrop{background:#241d1788}.line{padding:14px 0;border-bottom:1px solid #eae4dc}.line>div{display:flex;align-items:center;gap:9px;margin-top:8px}.line>div span:last-child{margin-left:auto}.line button{padding:.28rem .58rem}#summary button{width:100%}#loading{text-align:center;padding:44px 6px}#loading button{display:block;margin:22px auto}.spinner{width:44px;height:44px;margin:auto;border-radius:50%;border:4px solid #f1c7a6;border-top-color:#a5411c;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:710px){.filters{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr;padding:23px}.hero canvas{max-width:350px;justify-self:center}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-bottom{align-items:start;flex-direction:column}}@media(max-width:330px){.grid,.filters{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
.bar-actions{display:flex;align-items:center;gap:10px}.bar-actions select{border:1px solid #dfd8cf;background:#fff;color:inherit;padding:.58rem .4rem;border-radius:.65rem}#pager{display:flex;justify-content:center;align-items:center;gap:12px;margin:24px 0}#pager[hidden]{display:none}.card-bottom{flex-wrap:wrap}.body h3{overflow-wrap:anywhere}@media(max-width:420px){.bar{min-height:64px}.bar-actions{gap:5px}.bar-actions select,.bar-actions button{padding:.45rem .35rem}.brand{font-size:1.2rem}}
.product-media{position:relative;aspect-ratio:320/190;background:#f4efe7}.product-media canvas,.product-media img{position:absolute;inset:0;width:100%;height:100%}.product-media canvas[hidden],.product-media img[hidden]{display:none}.product-media img{object-fit:cover;object-position:center;background:#f4efe7}
.product-media img{opacity:0}.product-media img.ready{opacity:1}
.product-photo-credit{position:absolute;right:6px;bottom:6px;background:#fff;padding:2px 6px;border-radius:6px;font-size:.68rem;color:#4e4138}.product-photo-credit:focus-visible{outline-offset:0}

