.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}@media(max-width:1100px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid{grid-template-columns:1fr}}.product{display:grid;grid-template-rows:auto 1fr;border-radius:18px;overflow:hidden;background:var(--card);border:1px solid var(--line)}.product .pic{position:relative;aspect-ratio:5/4;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(180deg,#ede6d6,#e0d4ba)}.product .pic img{height:82%;width:auto;object-fit:contain;filter:drop-shadow(0 18px 16px rgba(43,32,25,.2));transition:transform .5s ease}.product .pic-pacote img{height:100%;width:100%;object-fit:cover;filter:none}.product:hover .pic img{transform:scale(1.04)}.score{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--espresso);color:var(--palha);line-height:1}.score b{font-family:var(--display);font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}.score small{font-size:8px;letter-spacing:.18em;margin-top:2px;color:#e1cfa7cc}.product .body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:4px}.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tijolo);font-weight:600}.product h3{margin:2px 0 0;font-family:var(--display);font-weight:600;font-size:20px;color:var(--espresso);line-height:1.2}.product .meta{font-size:13px;color:var(--ink-soft)}.product .notes{margin:6px 0 4px;font-size:13px;color:var(--ink);font-style:italic}.grind{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.grind button{border:1px solid var(--line);background:transparent;border-radius:999px;padding:5px 11px;font-size:12px;color:var(--ink-soft)}.grind button[aria-checked=true]{background:var(--espresso);border-color:var(--espresso);color:var(--papel)}.grind.single{font-size:12px;color:var(--ink-soft)}.product .row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px}.price{font-family:var(--display);font-weight:600;font-size:21px;color:var(--espresso);font-variant-numeric:tabular-nums}.shop-hero{background:var(--espresso);color:var(--papel);padding:124px 0 44px}.crumbs{display:flex;gap:8px;font-size:12px;color:#f3eee4b3}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.shop-hero h1{font-family:var(--display);font-weight:700;font-size:clamp(40px,5vw,64px);letter-spacing:-.025em;margin:10px 0 8px;line-height:1}.shop-hero p{margin:0;max-width:52ch;color:#f3eee4d1}.demo-flag{display:inline-block;margin-top:16px;font-size:11px;letter-spacing:.08em;padding:4px 10px;border-radius:999px;border:1px solid rgba(225,207,167,.45);color:var(--palha)}.shop-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:36px;padding-block:36px 96px;align-items:start}.side{position:sticky;top:90px;max-height:calc(100vh - 110px);overflow:auto;padding-right:6px;scrollbar-width:thin}.filters{display:flex;flex-direction:column;gap:6px}.fgroup{border:0;margin:0;padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:2px}.fgroup legend{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--espresso);padding:0;margin-bottom:8px;float:left;width:100%}.fgroup label{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center;font-size:14px;padding:5px 0;cursor:pointer}.fgroup label.off{opacity:.4;cursor:default}.fgroup input{accent-color:var(--espresso);width:16px;height:16px;margin:0}.fgroup em{font-style:normal;font-size:12px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.score-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:#3e2c210f;padding:4px;border-radius:12px}.score-steps button{border:0;background:transparent;border-radius:9px;padding:8px 0;font-size:13px;font-weight:600;color:var(--ink-soft);font-variant-numeric:tabular-nums}.score-steps button[aria-checked=true]{background:var(--espresso);color:var(--papel)}.hint{margin:8px 0 0;font-size:12px;color:var(--ink-soft);line-height:1.45}.toolbar{display:flex;align-items:center;gap:16px;margin-bottom:16px}.count{margin:0;color:var(--ink-soft)}.count b{color:var(--espresso);font-variant-numeric:tabular-nums}.sort{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-soft)}.sort select{font:inherit;color:var(--espresso);font-weight:600;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:9px 14px}.toolbar .filt-btn{display:none}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.chips button{border:1px solid var(--espresso);background:var(--espresso);color:var(--papel);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:500}.chips .clear{background:transparent;color:var(--espresso);border-color:transparent;text-decoration:underline;text-underline-offset:3px}.empty{padding:60px 20px;text-align:center;border:1px dashed var(--line);border-radius:18px}.empty h2{font-family:var(--display);color:var(--espresso);margin:0 0 6px}.empty p{color:var(--ink-soft);margin:0 0 18px}.drawer{position:fixed;inset:0;z-index:70;pointer-events:none}.drawer-bg{position:absolute;inset:0;background:#1e140e73;opacity:0;transition:opacity .25s}.drawer-panel{position:absolute;left:0;right:0;bottom:0;max-height:86svh;background:var(--papel);border-radius:20px 20px 0 0;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .3s ease}.drawer-panel .filters{overflow:auto;padding:0 20px}.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:14px 12px 6px 20px;font-family:var(--display);font-size:18px;color:var(--espresso)}.drawer-foot{display:grid;grid-template-columns:1fr 2fr;gap:10px;padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}.drawer[data-open="1"]{pointer-events:auto}.drawer[data-open="1"] .drawer-bg{opacity:1}.drawer[data-open="1"] .drawer-panel{transform:none}@media(max-width:900px){.shop-layout{grid-template-columns:1fr}.side{display:none}.toolbar .filt-btn{display:inline-flex;padding:10px 16px}.count,.sort span{display:none}.shop-hero{padding-top:104px}}@media(min-width:901px){.drawer{display:none}}
