.product-catalog { padding: 55px 0 100px; border-top: 1px solid var(--line); }
.product-catalog h2 { margin-bottom: 18px; font-size: clamp(2.7rem, 5vw, 5rem); }
.product-catalog-intro { max-width: 520px; margin: 0 0 38px; color: var(--muted); }
.tattoo-catalog-page { width: calc(100% - 64px); margin: 0 auto; }
.tattoo-catalog-page .product-catalog { border-top: 0; }
.tattoo-catalog-page .product-grid { grid-template-columns: repeat(auto-fill, minmax(230px, 300px)); gap: 18px; border: 0; }
.tattoo-catalog-page .product-card { width: 300px; height: 500px; min-height: 0; padding: 18px; border: 1px solid var(--accent); border-radius: 16px; background: var(--accent); color: #fff; display: flex; flex-direction: column; overflow: hidden; }
.tattoo-catalog-page .product-card h3 { margin: 16px 0 10px; font-size: 1.5rem; }
.tattoo-catalog-page .product-card img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.tattoo-catalog-page .product-card p { margin: 0; color: #fff; font-size: .88rem; }
.tattoo-catalog-page .product-card .product-price { margin-top: 20px; color: #fff; font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.tattoo-catalog-page .product-card .product-sessions { margin-top: 8px; color: #fff; font-size: .76rem; font-weight: 700; }
.product-empty { padding: 24px 0; color: var(--muted); }
@media (max-width: 760px) { .product-grid { grid-template-columns: 1fr; } .product-catalog { padding: 65px 0 75px; } .tattoo-catalog-page { width: calc(100% - 36px); } .tattoo-catalog-page .product-card { width: 100%; max-width: 300px; height: 460px; } }
