/* Cartões de produto, detalhes e controles exclusivos da vitrine. */
.site-footer{gap:28px}
.footer-brand,.footer-meta{display:flex;align-items:center;gap:22px;min-width:0}
.footer-brand{flex-wrap:wrap}
.footer-tagline,.footer-copyright{color:#c8beb1;font-size:9px;letter-spacing:.02em;line-height:1.5}
.footer-meta{justify-content:flex-end;gap:20px}
.footer-admin{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid #d0b78366;color:#e9d7b7;font-size:9px;letter-spacing:.04em;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.footer-admin:hover{border-color:#d0b783;background:#ffffff0d;color:#fff4df}
.footer-admin:focus-visible{outline:2px solid #d0b783;outline-offset:3px}
.footer-admin-mark{font-size:12px;color:#d0b783}
.bag-icon svg{display:block;width:20px;height:20px}
.sort-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px;white-space:nowrap}
.sort-label select{padding:7px 8px;border:1px solid var(--line);background:transparent;color:var(--ink);font:10px var(--sans)}
.product-view{all:unset;display:block;width:100%;color:inherit;text-align:left;cursor:pointer}
.product-view:focus-visible,.product-details-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.product-card .product-price{display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.product-price del{font-size:9px;font-weight:400;color:#93897e}
.product-price strong{font-size:11px;font-weight:600}
.sale-tag{background:#6c3e32;color:#fff}
.product-actions{display:flex;align-items:center;gap:11px;margin-top:-8px;padding:0 1px 12px}
.product-card .add-button{position:static;flex:0 0 35px;width:35px;height:35px;border:1px solid var(--line);font-size:20px}
.product-card .add-button:disabled{opacity:.5;cursor:not-allowed}
.product-details-link{padding:6px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:#766c61;font-size:10px;cursor:pointer}
.catalog-status{min-height:18px;margin:14px 0 -12px;color:var(--muted);font-size:10px}
.catalog-status[hidden]{display:none}
.retry-button{border:0;background:none;color:var(--gold);text-decoration:underline;cursor:pointer}
.product-dialog{width:min(820px,calc(100vw - 32px));max-width:820px;max-height:90vh;padding:0;overflow:auto;border:0;background:var(--white);color:var(--ink);box-shadow:0 25px 90px #0003}
.product-dialog::backdrop{background:#1d181399}
.detail-close{position:sticky;z-index:2;top:10px;float:right;width:38px;height:38px;margin:10px 12px -48px 0;border-radius:50%;background:#fffefa;color:var(--ink);font-size:27px}
.detail-body{display:grid;grid-template-columns:1fr 1fr;min-height:460px}
.detail-image{position:relative;display:block;width:100%;min-height:460px;padding:0;overflow:hidden;border:0;background:#eee7dc;text-align:center;cursor:zoom-in}
.detail-image img{width:100%;height:100%;object-fit:cover}
.detail-image .product-placeholder{height:100%}
.image-zoom-hint{position:absolute;right:13px;bottom:13px;padding:8px 10px;background:#fffefaE8;color:var(--ink);font-size:9px;letter-spacing:.04em}
.image-zoom-hint span{margin-left:5px;color:var(--gold)}
.image-lightbox{position:relative;width:min(96vw,1400px);max-width:96vw;max-height:96vh;padding:0;overflow:visible;border:0;background:transparent}
.image-lightbox::backdrop{background:#15120fE8;backdrop-filter:blur(3px)}
.image-lightbox>img{display:block;width:auto;height:auto;max-width:96vw;max-height:92vh;margin:auto;object-fit:contain;box-shadow:0 18px 70px #0008}
.image-lightbox-close{position:fixed;z-index:2;top:14px;right:18px;width:42px;height:42px;border:1px solid #ffffff70;border-radius:50%;background:#1d181399;color:#fff;font-size:28px}
.detail-copy{align-self:center;padding:56px 40px 40px}
.detail-copy .eyebrow{margin-bottom:14px}
.detail-copy h2{margin:0 0 8px;font:42px/1.05 var(--serif)}
.detail-subline,.detail-availability,.sale-validity{color:var(--muted);font-size:10px}
.detail-notes{margin:23px 0 10px;font:19px/1.4 var(--serif)}
.detail-description{color:#6d645b;font-size:12px;line-height:1.8}
.detail-availability{margin:22px 0 13px}
.detail-price .product-price{align-items:flex-start;font-size:20px}
.detail-price .product-price strong{font-size:22px}
.detail-price .product-price del{font-size:12px}
.sale-validity{line-height:1.5}
.detail-add{width:100%;margin-top:17px}
@media(max-width:800px){.sort-label{margin-left:0}.filters{gap:12px}}
@media(max-width:700px){.detail-body{grid-template-columns:1fr}.detail-image{height:42vh;min-height:290px;max-height:410px}.detail-copy{padding:30px 25px}.detail-copy h2{font-size:36px}}
@media(max-width:480px){.sort-label{flex-basis:100%;justify-content:space-between}.sort-label select{flex:1;max-width:190px}.detail-image{min-height:270px}.detail-copy{padding:27px 22px}}
@media(max-width:600px){.site-footer{display:flex;align-items:flex-start;flex-direction:column;gap:16px;padding:22px}.footer-brand{align-items:flex-start;flex-direction:column;gap:6px}.footer-meta{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;gap:12px;padding-top:13px;border-top:1px solid #ffffff26}.footer-copyright{align-self:center}.footer-admin{justify-self:end}}
@media(max-width:340px){.footer-meta{grid-template-columns:1fr;justify-items:start;gap:10px}.footer-admin{justify-self:start}}
