/* OnyxProf shop — поверх стилей основного сайта */
#shop-content { padding-top: 150px; padding-bottom: 60px; min-height: 60vh; }
.shop-hero { margin-bottom: 2.5rem; }
.shop-h1 { font-family: 'Playfair Display', serif; font-weight: 700; }
.shop-h2 { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 1.5rem; }
.shop-cats { display: flex; flex-direction: column; gap: 2px; border: 1px solid #ececec; border-radius: 10px; overflow: hidden; }
.shop-cats .cat-link { padding: 11px 16px; color: #222; text-decoration: none; border-bottom: 1px solid #f2f2f2; transition: background .15s; }
.shop-cats .cat-link:last-child { border-bottom: 0; }
.shop-cats .cat-link:hover { background: #f7f4f8; }
.shop-cats .cat-link.active { background: #111; color: #fff; }
.prod-card { border: 1px solid #ececec; border-radius: 12px; overflow: hidden; height: 100%; display: flex; flex-direction: column; background: #fff; transition: box-shadow .15s, transform .15s; }
.prod-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.08); transform: translateY(-2px); }
.prod-card-img { display: block; }
.prod-ph { aspect-ratio: 1/1; background: linear-gradient(135deg,#f3eef6,#e9e1ef); display: flex; align-items: center; justify-content: center; }
.prod-ph span { font-family: 'Playfair Display', serif; font-size: 3rem; color: #b79ccb; font-weight: 700; }
.prod-card-body { padding: 14px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.prod-name { color: #222; text-decoration: none; font-weight: 500; line-height: 1.3; flex: 1; }
.prod-name:hover { color: #7a5a99; }
.prod-price { display: flex; align-items: baseline; gap: 8px; }
.prod-price .old { color: #aaa; text-decoration: line-through; font-size: .9rem; }
.prod-price .now { font-weight: 700; font-size: 1.15rem; }
.prod-detail-img .prod-ph { border-radius: 14px; }
.prod-detail-img .prod-ph span { font-size: 5rem; }
.prod-desc { line-height: 1.7; color: #444; }
.shop-breadcrumb { font-size: .9rem; color: #888; }
.shop-breadcrumb a { color: #7a5a99; text-decoration: none; }
.shop-summary { border: 1px solid #ececec; border-radius: 12px; padding: 20px; background: #fafafa; }
.shop-summary .d-flex { margin: 6px 0; }
.cart-total { font-size: 1.2rem; }
.shop-cart-table a { color: #222; text-decoration: none; }
.shop-cart-table a:hover { color: #7a5a99; }
@media (max-width: 575px){ #shop-content{ padding-top: 120px; } .prod-ph span{ font-size: 2.2rem; } }
