/* Scoped catalog update. Base styling and tracking remain untouched. */
#produtos .catalog-models .catalog-frame img { width:100%; object-fit:contain; transform:none; }
#produtos .catalog-models .model-second { visibility:hidden; }
#produtos .catalog-models.is-back .model-first { visibility:hidden; }
#produtos .catalog-models.is-back .model-second { visibility:visible; }
#produtos .product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); align-items:start; grid-auto-rows:auto; }
#produtos .product-card { min-width:0; }
#produtos .catalog-gallery { background:#fff; border-bottom:1px solid #eee; padding:16px 12px 12px; }
#produtos .catalog-visual { display:block; width:100%; padding:0; border:0; background:#fff; cursor:pointer; touch-action:pan-y; }
#produtos .catalog-frame { position:relative; display:block; width:100%; aspect-ratio:1; overflow:hidden; }
#produtos .catalog-frame img { position:absolute; top:0; left:0; width:200%; max-width:none; height:100%; display:block; object-fit:fill; user-select:none; -webkit-user-drag:none; }
#produtos .catalog-gallery:not(.catalog-models).is-back .catalog-frame img { transform:translateX(-50%); }
#produtos .catalog-controls { display:flex; gap:4px; width:max-content; max-width:100%; margin:12px auto 0; padding:4px; border-radius:24px; background:#111; }
#produtos .catalog-controls button { border:0; border-radius:20px; background:transparent; color:#fff; padding:10px 20px; min-height:44px; font:700 .75rem Montserrat,Arial,sans-serif; cursor:pointer; }
#produtos .catalog-controls button[aria-pressed="true"] { background:#f4c400; color:#111; }
#produtos .catalog-hint { text-align:center; margin:9px 0 0; color:#606060; font-size:.65rem; line-height:1.4; }
#produtos .catalog-visual:focus-visible,#produtos .catalog-controls button:focus-visible { outline:3px solid #bb8700; outline-offset:3px; }
@media(min-width:851px) { #produtos .product-grid { grid-template-columns:repeat(6,minmax(0,1fr)); } #produtos .product-card { grid-column:span 2; }  #produtos .catalog-frame { max-width:360px; margin-inline:auto; } }
@media(min-width:621px) and (max-width:850px) { #produtos .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } #produtos .product-card:last-child { grid-column:auto; } }
@media(max-width:620px) { #produtos .product-grid { grid-template-columns:minmax(0,1fr); } #produtos .catalog-frame { max-width:370px; margin-inline:auto; } }

.site-footer .payment-footer { padding-top:24px; padding-bottom:24px; border-top:1px solid #444; }
.site-footer .payment-footer h2 { font-size:1rem; margin:0 0 12px; }
.site-footer .payment-footer p { font-size:.875rem; line-height:1.6; margin:6px 0; }

/* Cards follow content height; details stay close to product information. */
#produtos .product-card { height:auto; }
#produtos .catalog-gallery { flex-shrink:0; }
#produtos .product-body > h3 { min-height:2.4em; }
#produtos .product-body > .catalog-details { margin-top:16px; }
#produtos .product-body > .product-link { margin-top:16px; }
#produtos .product-grid:has(.catalog-details[open]) { grid-auto-rows:auto; }
@media(max-width:620px) { #produtos .product-grid { grid-auto-rows:auto; } #produtos .product-body > h3 { min-height:0; } #produtos .product-body > .catalog-details { margin-top:16px; } }

/* Compact transition from catalog to order form. */
#produtos { padding-bottom:24px; }
#produtos .color-note { margin-bottom:0; }
#orcamento { padding-top:32px; }
