.catalog-page-header{background:linear-gradient(135deg,var(--accent) 0%,var(--brand-end) 100%);color:#fff;padding:clamp(60px,8vw,80px) 40px;margin:0 -40px clamp(48px,6vw,64px);text-align:center;position:relative;overflow:hidden}.catalog-page-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 70% 50%,rgba(255,255,255,.08) 0%,transparent 50%);pointer-events:none}.catalog-page-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%)}.catalog-page-header-content{max-width:1400px;margin:0 auto;position:relative;z-index:1}.catalog-page-title{font-size:clamp(36px,6vw,56px);font-weight:var(--font-weight-extrabold);font-family:var(--font-heading);margin:0 0 20px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.2);letter-spacing:-.02em;line-height:1.2}.catalog-page-subtitle{font-size:clamp(16px,2.5vw,20px);opacity:.95;font-weight:var(--font-weight-medium);line-height:1.6;max-width:800px;margin:0 auto}.catalog-filters-section{margin-bottom:40px}.catalog-filters-wrapper{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.catalog-search{position:relative;max-width:600px;margin:0 auto}.catalog-search-input{width:100%;padding:16px 50px 16px 20px;border:2px solid #e5e7eb;border-radius:12px;font-size:var(--font-size-base);font-family:var(--font-primary);transition:all .2s ease}.catalog-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f61a}.catalog-search-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.catalog-category-filters{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.filter-btn{padding:10px 20px;background:var(--white);border:2px solid #e5e7eb;border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-primary);color:var(--ink);cursor:pointer;transition:all .2s ease}.filter-btn:hover{border-color:var(--accent);color:var(--accent)}.filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.catalog-empty{text-align:center;padding:80px 20px;background:var(--white);border-radius:16px;box-shadow:0 2px 8px #0000001a}.catalog-empty p{font-size:var(--font-size-xl);color:var(--ink);margin:0 0 12px}.catalog-empty-hint{font-size:var(--font-size-base);color:var(--muted)}.catalog-cta-section{max-width:1400px;margin:60px auto 0;padding:40px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:16px;text-align:center}.catalog-cta-content h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--ink);margin:0 0 12px}.catalog-cta-content p{font-size:var(--font-size-base);color:var(--muted);margin:0 0 24px}.catalog-cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.catalog-cta-btn{padding:14px 28px;border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-primary);text-decoration:none;transition:all .2s ease}.catalog-cta-btn-call{background:var(--accent);color:#fff}.catalog-cta-btn-call:hover{background:var(--brand-end);transform:translateY(-1px)}.catalog-cta-btn-form{background:var(--white);color:var(--accent);border:2px solid var(--accent)}.catalog-cta-btn-form:hover{background:var(--accent);color:#fff}@media (max-width: 768px){.catalog-page-header{padding:clamp(48px,8vw,60px) 20px;margin:0 -20px clamp(40px,6vw,48px)}.price-list-filters-wrapper{margin-top:-24px;padding:20px;border-radius:16px}.price-list-filter-buttons{gap:8px}.filter-btn-top{padding:10px 18px;font-size:14px}.catalog-cta-section{padding:30px 20px}.catalog-cta-buttons{flex-direction:column}.catalog-cta-btn{width:100%}}.price-list-filters-section{max-width:1400px;margin:0 auto 32px;padding:0 clamp(16px,4vw,40px);position:relative}.price-list-filters-wrapper{background:var(--white);border-radius:20px;padding:clamp(24px,4vw,32px);box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;border:1px solid rgba(0,0,0,.05);position:relative;margin-top:-32px;z-index:2}.price-list-filters-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent) 0%,var(--brand-end) 100%);border-radius:20px 20px 0 0}.price-list-search{position:relative;max-width:600px;margin:0 auto 24px}.price-list-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;z-index:1}.price-list-search-input{width:100%;padding:16px 50px 16px 48px;border:2px solid #e5e7eb;border-radius:12px;font-size:var(--font-size-base);font-family:var(--font-primary);transition:all .3s ease;background:var(--white)}.price-list-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #3b82f61a;background:#fefefe}.price-list-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:#f3f4f6;border-radius:50%;color:var(--muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.price-list-search-clear:hover{background:#e5e7eb;color:var(--ink)}.price-list-filter-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;padding-top:8px}.filter-btn-top{padding:12px 24px;background:var(--white);border:2px solid #e5e7eb;border-radius:10px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-primary);color:var(--ink);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative;overflow:hidden}.filter-btn-top:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.filter-btn-top:hover:before{left:100%}.filter-btn-top:hover{border-color:var(--accent);color:var(--accent);background:linear-gradient(135deg,#f9fafb,#fff);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.filter-btn-top.active{background:linear-gradient(135deg,var(--accent) 0%,var(--brand-end) 100%);border-color:transparent;color:#fff;box-shadow:0 4px 16px #3b82f64d;transform:translateY(-2px)}.filter-btn-top.active:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}.filter-btn-top.active:hover{box-shadow:0 6px 20px #3b82f666;transform:translateY(-3px)}.price-list-section{max-width:1400px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 60px}.price-list-container{display:flex;flex-direction:column;gap:32px}.price-list-category{background:var(--white);border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:box-shadow .3s ease}.price-list-category:hover{box-shadow:0 4px 16px #0000001f}.price-list-category-header{background:linear-gradient(135deg,var(--accent) 0%,var(--brand-end) 100%);padding:24px 32px;color:#fff}.price-list-category-title{font-size:clamp(24px,3vw,32px);font-weight:var(--font-weight-extrabold);font-family:var(--font-heading);margin:0;color:#fff}.price-list-category-content{padding:32px}.price-list-subcategory{margin-bottom:40px;background:#fafafa;border-radius:12px;padding:24px;border:1px solid #e5e7eb}.price-list-subcategory:last-child{margin-bottom:0}.price-list-subcategory-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);font-family:var(--font-heading);color:var(--ink);margin:0 0 20px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.subcategory-image{margin-bottom:24px;border-radius:12px;overflow:hidden;background:#f3f4f6;max-height:500px;display:flex;align-items:center;justify-content:center}.subcategory-image-img{width:100%;height:auto;max-height:500px;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .3s ease}.subcategory-image-img:hover{transform:scale(1.02)}.subcategory-gallery{display:grid;gap:4px;margin-bottom:20px;border-radius:12px;overflow:hidden;background:#000;max-height:500px}.subcategory-gallery:has(.gallery-item:only-child){grid-template-columns:1fr}.subcategory-gallery:has(.gallery-item:only-child) .gallery-item{aspect-ratio:16/9;max-height:500px}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child){grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:6px}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:8px;transform:scale(1);transition:all .3s cubic-bezier(.4,0,.2,1)}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item:first-child{transform-origin:right center}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item:last-child{transform-origin:left center}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item:hover{transform:scale(1.03);z-index:2;box-shadow:0 8px 24px #0006}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.1) 100%);opacity:0;transition:opacity .3s ease;z-index:1;pointer-events:none}.subcategory-gallery:has(.gallery-item:nth-child(2):last-child) .gallery-item:hover:before{opacity:1}.subcategory-gallery:has(.gallery-item:nth-child(3):last-child){grid-template-columns:2fr 1fr}.subcategory-gallery:has(.gallery-item:nth-child(3):last-child) .gallery-item:first-child{grid-row:1 / 3;aspect-ratio:auto}.subcategory-gallery:has(.gallery-item:nth-child(3):last-child) .gallery-item:nth-child(2),.subcategory-gallery:has(.gallery-item:nth-child(3):last-child) .gallery-item:nth-child(3){aspect-ratio:1}.subcategory-gallery:has(.gallery-item:nth-child(4)){grid-template-columns:repeat(2,1fr)}.subcategory-gallery:has(.gallery-item:nth-child(4)) .gallery-item{aspect-ratio:1}.gallery-item{position:relative;overflow:hidden;background:#1a1a1a;cursor:pointer;transition:opacity .2s ease;min-height:200px;display:flex;align-items:center;justify-content:center}.gallery-item:hover{opacity:.85}.gallery-item:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0000;transition:background .2s ease;pointer-events:none}.gallery-item:hover:after{background:#0000001a}.gallery-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;min-height:200px;background:#f3f4f6;opacity:1;transition:opacity .3s ease}.gallery-image[src=""]{display:none}.subcategory-description{background:var(--white);padding:16px 20px;border-radius:8px;margin-bottom:24px;border-left:4px solid var(--accent);font-size:var(--font-size-base);line-height:1.6;color:var(--ink)}.price-list-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid #e5e7eb}.price-list-table{width:100%;border-collapse:collapse;background:var(--white);min-width:800px}@media (max-width: 768px){.price-list-table-wrapper{overflow-x:visible;border:none}.price-list-table{display:block;min-width:auto;border:none}.price-list-table thead{display:none}.price-list-table tbody{display:block}.price-list-table tbody tr{display:block;background:var(--white);border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 2px 8px #0000000d;transition:box-shadow .2s ease}.price-list-table tbody tr:hover{box-shadow:0 4px 12px #0000001a}.price-list-table tbody tr:last-child{margin-bottom:0}.price-list-table td{display:block;padding:0;border:none;text-align:left!important}.price-list-table td:not(:last-child){margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.price-list-table td.col-name:before{content:"Товар:";display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.price-list-table td.col-price:before{content:"Цена:";display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.price-list-table td.col-action:before{content:"";display:none}.product-name-cell{padding:0}.product-name-cell strong{font-size:var(--font-size-lg);display:block;margin-bottom:6px}.product-description{font-size:var(--font-size-sm)}.product-price-cell{align-items:flex-start;text-align:left}.price-value{font-size:var(--font-size-2xl)}.btn-order-inline{width:100%;padding:14px;font-size:var(--font-size-base)}.price-variant{align-items:flex-start}.variant-info{font-size:var(--font-size-sm)}.variant-price{font-size:var(--font-size-xl)}}.price-list-table thead{background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.price-list-table th{padding:16px 20px;text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--ink);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb}.price-list-table th.col-name{width:50%}.price-list-table th.col-price{width:30%;text-align:right}.price-list-table th.col-action{width:20%;text-align:center}.price-list-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.price-list-table tbody tr:hover{background-color:#f9fafb}.price-list-table tbody tr:last-child{border-bottom:none}.price-list-table td{padding:20px;vertical-align:middle}.product-name-cell{display:flex;flex-direction:column;gap:6px}.product-name-cell strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--ink);line-height:1.3}.product-description{font-size:var(--font-size-sm);color:var(--muted);line-height:1.5}.product-price-cell{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.price-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-extrabold);color:var(--accent)}.price-on-request{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--muted);font-style:italic}.price-variant{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:4px 0}.variant-info{font-size:var(--font-size-sm);color:var(--muted)}.variant-price{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--accent)}.btn-order-inline{display:inline-block;padding:10px 20px;background:var(--accent);color:#fff;border-radius:8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;text-align:center;transition:all .2s ease;white-space:nowrap}.btn-order-inline:hover{background:var(--brand-end);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.price-list-table td.col-action{text-align:center}.gallery-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.gallery-modal.show{opacity:1}.gallery-modal.closing{opacity:0}.gallery-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gallery-modal-content{position:relative;max-width:90vw;max-height:90vh;z-index:1;display:flex;align-items:center;justify-content:center}.gallery-modal-close{position:absolute;top:-40px;right:0;width:40px;height:40px;border:none;background:#fff3;color:#fff;font-size:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:2}.gallery-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.gallery-modal-image{max-width:100%;max-height:90vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080}.price-list-empty{text-align:center;padding:80px 20px;background:var(--white);border-radius:16px;box-shadow:0 2px 8px #00000014}.price-list-empty p{font-size:var(--font-size-xl);color:var(--ink);margin:0 0 12px;font-weight:var(--font-weight-semibold)}.price-list-empty-hint{font-size:var(--font-size-base);color:var(--muted);margin:0}@media (max-width: 1024px){.price-list-layout{grid-template-columns:240px 1fr;gap:24px}.price-list-sidebar{top:80px}.price-list-category-content{padding:24px}.price-list-table th,.price-list-table td{padding:16px 12px}}@media (max-width: 768px){.price-list-filters-section{padding:0 16px}.price-list-filters-wrapper{padding:20px 16px;border-radius:16px;margin-top:-24px}.price-list-filter-buttons{gap:8px;justify-content:flex-start;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.filter-btn-top{padding:10px 18px;font-size:14px;flex-shrink:0}.price-list-section{padding:0 16px 40px}.price-list-category-header{padding:20px 24px}.price-list-category-content{padding:20px 16px}.price-list-subcategory{padding:16px}.price-list-subcategory-title{font-size:var(--font-size-lg)}.subcategory-gallery{gap:3px}.subcategory-description{padding:12px 16px;font-size:var(--font-size-sm)}}
