/* Additional catalogue pages reuse the existing Polimpex design tokens. */
.category-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin:24px 0 32px; }
.category-links a { color:var(--ink-2); text-decoration:underline; text-underline-offset:4px; }
.category-links a:hover { color:var(--accent); }
.product-card h4 a,.product-card h3 a { color:inherit; }
.product-card h4 a:hover,.product-card h3 a:hover { color:var(--accent); text-decoration:underline; }
.catalog-page .detail-header { border-bottom:1px solid var(--line); background:var(--bg); }
.detail-header .container { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:90px; }
.detail-header img { width:164px; height:auto; max-height:64px; object-fit:contain; }
.detail-header nav { display:flex; flex-wrap:wrap; gap:24px; font-weight:700; }
.catalog-page .detail-main { padding-top:32px; padding-bottom:64px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:14px; margin-bottom:32px; }
.breadcrumbs a+a::before { content:'›'; margin-right:8px; }
.category-intro { max-width:840px; margin-bottom:40px; }
.catalog-page h1 { font-size:clamp(30px,4vw,52px); line-height:1.1; letter-spacing:-.02em; margin:16px 0 24px; }
.catalog-page .product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.catalog-page .product-card h2,.catalog-page .product-card h3 { font-size:19px; line-height:1.25; letter-spacing:0; }
.catalog-page .product-card .body { display:flex; flex-direction:column; gap:16px; }
.catalog-page .product-card .product-img { display:flex; }
.catalog-page .product-card .product-img img { width:100%; height:100%; object-fit:contain; }
.product-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:64px; align-items:start; }
.detail-image { border:1px solid var(--line); border-radius:var(--r-sm); padding:24px; background:white; }
.detail-image img { width:100%; height:auto; max-height:580px; object-fit:contain; }
.detail-description { font-size:18px; line-height:1.6; color:var(--ink-2); }
.detail-specs { margin:24px 0; }
.detail-specs div { display:flex; justify-content:space-between; gap:24px; padding:12px 0; border-bottom:1px solid var(--line); }
.detail-specs dt { color:var(--muted); }
.detail-specs dd { margin:0; font-weight:700; }
.detail-price { font-size:36px; font-weight:700; margin:20px 0 4px; }
.detail-copy .btn { margin-top:24px; }
.detail-delivery { color:var(--muted); margin-top:20px; line-height:1.5; }
.related { margin-top:56px; }
.related h2 { font-size:28px; margin-bottom:24px; }
.detail-footer { background:var(--bg-cream); border-top:1px solid var(--line); padding:40px 0; }
.detail-footer h2 { font-size:22px; }.detail-footer p { margin-top:32px; }
.skip-link { position:absolute; top:-100px; left:16px; padding:12px; background:white; z-index:100; }
.skip-link:focus { top:12px; }
a:focus-visible,button:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
@media(max-width:1024px) { .catalog-page .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.product-detail { gap:32px; } }
@media(max-width:768px) { .catalog-page .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.product-detail { grid-template-columns:1fr; }.detail-header .container { flex-wrap:wrap; padding-top:16px; padding-bottom:16px; }.detail-header nav { gap:16px; }.detail-image img { max-height:440px; } }
@media(max-width:420px) { .catalog-page .product-grid { grid-template-columns:1fr; }.detail-header nav { font-size:14px; }.category-links { gap:12px 16px; }.catalog-page h1 { overflow-wrap:anywhere; } }
