.back-to-catalog { display: inline-block; margin-bottom: 22px; color: var(--steel); font-weight: 700; }
.back-to-catalog:hover { color: var(--red-dark); }
.product-sheet { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); box-shadow: var(--shadow); }
.product-gallery { min-width: 0; background: var(--paper-2); padding: 24px; }
.sheet-main-image { display: grid; place-items: center; aspect-ratio: 1; width: 100%; background: white; border-radius: 8px; overflow: hidden; }
.sheet-main-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sheet-thumbs { display: flex; gap: 10px; overflow-x: auto; padding: 16px 2px 2px; }
.sheet-info { min-width: 0; padding: 34px; overflow-wrap: anywhere; }
.sheet-info h1 { font-size: clamp(1.6rem, 3vw, 2.25rem); line-height: 1.18; margin-bottom: 22px; }
.sheet-info h2 { font-size: 19px; margin-top: 28px; }
.availability { display: inline-block; padding: 9px 14px; border-radius: 6px; background: #fff2d9; color: #735000; font-weight: 700; }
.availability.in-stock { background: #e3f5ee; color: #006b4b; }
.sheet-contact { display: inline-flex; align-items: center; justify-content: center; padding: 12px 18px; }
.product-page { padding-bottom: 0; }
.product-page .site-footer { position: static; }
.product-page a:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
@media (max-width: 760px) {
  .product-sheet { grid-template-columns: minmax(0, 1fr); }
  .product-gallery, .sheet-info { padding: 20px; }
  .product-page .site-header { position: static; }
}
