.filters{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0}.filters label{display:grid;gap:6px;font-weight:600}.filters select{padding:11px 14px;border:1px solid #d8d4cc;border-radius:9px;background:white;font:inherit;min-width:210px}.item[hidden]{display:none!important}.card .photo img{width:100%;height:100%;object-fit:contain}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.actions .button{font-size:14px;padding:11px 13px;text-align:center}.button.secondary{background:#f6f0e5;color:#54431e;border:1px solid #d6c7a3}.product-detail{max-width:1160px;margin:30px auto;padding:0 24px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.photo.large{min-height:330px}.photo.large img{width:100%;max-height:380px;object-fit:contain}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}.gallery img{width:100%;aspect-ratio:1;object-fit:contain;border:1px solid #eee;border-radius:9px}.product-detail li{margin:8px 0}@media(max-width:760px){.detail-grid{grid-template-columns:1fr}.filters{display:grid}.gallery{grid-template-columns:repeat(4,1fr)}}

.carousel-main{position:relative;display:flex;align-items:center;justify-content:center;min-height:340px;border:1px solid #eee;border-radius:12px;background:white}.carousel-current{width:100%;height:360px;object-fit:contain;padding:15px}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #ddd;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:20px;z-index:1}.carousel-arrow.prev{left:9px}.carousel-arrow.next{right:9px}.carousel-thumbs{display:flex;gap:8px;overflow-x:auto;padding:12px 2px}.thumb{flex:0 0 70px;height:70px;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;padding:3px}.thumb.active{border-color:#987020}.thumb img{width:100%;height:100%;object-fit:contain}.carousel-counter{text-align:center;color:#666;font-size:13px;margin:0 0 10px}

/* Lightbox de fotos: abre ao clicar na imagem principal. */
.zoomable{cursor:zoom-in}
body.lightbox-open{overflow:hidden}
.lightbox[hidden]{display:none!important}
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.91);display:flex;align-items:center;justify-content:center;padding:55px 65px 65px}
.lightbox-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:white;border-radius:5px}
.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.94);color:#222;cursor:pointer;border-radius:50%;width:46px;height:46px;font-size:25px;display:grid;place-items:center}
.lightbox-close{right:16px;top:14px;font-size:34px!important}
.lightbox-prev{left:12px;top:50%;transform:translateY(-50%)}
.lightbox-next{right:12px;top:50%;transform:translateY(-50%)}
.lightbox-count{position:absolute;bottom:17px;color:white;font-size:15px}
@media(max-width:600px){.lightbox{padding:65px 45px}.lightbox button{width:38px;height:38px}.lightbox-prev{left:4px}.lightbox-next{right:4px}}

/* RESPONSIVO V2 — celulares, tablets, notebooks e telas largas */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
img{max-width:100%}
main,.shell,.detail-grid,.product-detail{min-width:0}
button,a,select,input{touch-action:manipulation}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #aa7c2a;outline-offset:3px}
@media (min-width:801px) and (max-width:1100px){
 .shell{grid-template-columns:170px minmax(0,1fr);gap:22px;padding:24px 18px}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .head{gap:14px}
 .detail-grid{gap:22px}
}
@media (max-width:800px){
 .top{position:relative}
 .head{padding:10px 16px;gap:10px}
 .brand{font-size:17px;line-height:1.2;gap:9px}
 .brand img{width:43px;height:43px}
 .search{padding:11px 13px;min-height:44px;font-size:16px}
 .shell{padding:14px 16px;max-width:100%}
 .side{display:flex;align-items:center;flex-wrap:wrap;overflow:visible;white-space:normal;gap:7px;border:0;margin:0 0 16px;padding:0}
 .side strong{flex:0 0 100%;font-size:13px;color:#776b54;margin-bottom:1px}
 .side a{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5ddce;background:#faf7f1;border-radius:999px;padding:8px 12px;font-size:13px;min-height:38px}
 .hero{padding:19px 18px;border-radius:16px}
 .hero h1{font-size:clamp(23px,5vw,32px);line-height:1.16;margin:9px 0}
 .hero p{margin:8px 0 0;font-size:14px;line-height:1.5}
 h2{font-size:22px;margin:24px 0 12px}
 .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
 .filters label{min-width:0;font-size:13px}
 .filters select{min-width:0;width:100%;font-size:16px;min-height:44px;padding:9px 10px}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .card .photo{height:auto;aspect-ratio:4/3}
 .card .body{padding:12px}
 .card h3{font-size:16px;line-height:1.35}
 .actions{gap:7px}
 .actions .button{font-size:13px;padding:11px 9px;min-height:43px;display:flex;align-items:center;justify-content:center}
 .product-detail{padding:0 16px;margin:17px auto}
 .detail-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .product-detail h1{font-size:clamp(24px,5vw,32px);line-height:1.18}
 .carousel-main{min-height:0}
 .carousel-current{height:auto;aspect-ratio:4/3;max-height:460px;padding:8px}
 .carousel-thumbs{gap:7px;-webkit-overflow-scrolling:touch}
 .thumb{flex-basis:64px;height:64px}
 .footer{padding:18px 16px;font-size:12px}
}
@media (max-width:520px){
 .head{padding:9px 14px}
 .shell{padding:12px 14px}
 .side{gap:6px;margin-bottom:13px}
 .side a{padding:7px 10px;font-size:12px;min-height:36px}
 .hero{padding:16px}
 .hero .eyebrow{font-size:10px;letter-spacing:.04em}
 .hero h1{font-size:24px}
 .filters{grid-template-columns:1fr 1fr;gap:8px}
 .filters select{padding:9px 6px;font-size:14px}
 .cards{grid-template-columns:1fr;gap:13px}
 .card .photo{aspect-ratio:16/10;max-height:250px}
 .card .body{padding:14px}
 .actions .button{flex:1 1 130px}
 .carousel-arrow{width:38px;height:38px}
 .carousel-current{aspect-ratio:1/1;max-height:360px}
 .lightbox{padding:55px 42px 50px}
 .lightbox-count{bottom:14px}
}
@media (max-width:350px){
 .filters{grid-template-columns:1fr}
 .brand{font-size:15px}
 .hero h1{font-size:22px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
