.catalog-page { min-height: 100vh; color: #f5f2e8; background: #080907; }
.catalog-page a { color: inherit; }
.catalog-header { position: sticky; z-index: 50; top: 10px; width: min(1320px,calc(100% - 24px)); height: 64px; margin: 10px auto 0; padding: 0 18px; display: flex; align-items: center; gap: 30px; border: 1px solid rgba(213,169,45,.18); border-radius: 16px; background: rgba(8,9,7,.93); box-shadow: 0 14px 38px rgba(0,0,0,.24); backdrop-filter: blur(16px); }
.catalog-header nav { margin-left: auto; display: flex; gap: 30px; }
.catalog-header nav a { color: rgba(255,255,255,.68); font-size: 12px; font-weight: 700; }
.catalog-header nav a:hover, .catalog-header nav a[aria-current="page"] { color: #e7c65d; }
.catalog-header-cta, .product-request { padding: 13px 18px; color: #090a08; background: linear-gradient(135deg,#e3bd47,#a87913); font-size: 11px; font-weight: 800; }
.catalog-header-cta span { margin-left: 10px; }
.catalog-page main { width: min(1420px,90vw); margin: 0 auto; }
.catalog-breadcrumbs { padding: 28px 0 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 9px; color: rgba(255,255,255,.42); font-size: 10px; }
.catalog-breadcrumbs a:hover { color: #e7c65d; }
.catalog-breadcrumbs b { color: rgba(213,169,45,.45); }
.catalog-breadcrumbs span { color: rgba(255,255,255,.72); }
.catalog-hero { min-height: 570px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; border-bottom: 1px solid rgba(213,169,45,.18); }
.catalog-hero > div { padding: 50px 7vw 70px 0; }
.catalog-kicker, .catalog-section > header span, .catalog-cta span { color: #d9ad35; font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.catalog-hero h1, .category-hero h1, .product-detail h1, .catalog-not-found h1 { margin: 18px 0 24px; font-family: var(--display); font-size: clamp(44px,5vw,76px); font-weight: 500; line-height: 1.08; }
.catalog-hero p, .category-hero p, .product-detail-copy > p { max-width: 720px; margin: 0; color: rgba(255,255,255,.58); font-size: 14px; line-height: 1.85; }
.catalog-hero > img { width: 100%; height: 500px; padding: 40px; object-fit: contain; background: radial-gradient(circle,#34362a,#080907 70%); }
.catalog-section { padding: 100px 0; }
.catalog-section > header { max-width: 780px; margin-bottom: 38px; }
.catalog-section > header h2, .catalog-cta h2 { margin: 12px 0 0; font-family: var(--display); font-size: clamp(30px,3vw,46px); font-weight: 500; line-height: 1.2; }
.catalog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.catalog-card { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.1); background: #10120e; transition: transform .25s,border-color .25s; }
.catalog-card:hover, .product-card:hover { transform: translateY(-4px); border-color: rgba(213,169,45,.65); }
.catalog-card-image { position: relative; height: 280px; min-height: 0; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle,#34362a,#080907 70%); }
.catalog-card-image img { width: 100%; height: 100%; min-height: 0; padding: 28px; object-fit: contain; }
.catalog-card-image i, .product-card > span i { position: absolute; top: 18px; left: 18px; color: #e7c65d; font-size: 10px; font-style: normal; }
.catalog-card-copy { min-height: 270px; padding: 30px; display: flex; flex-direction: column; }
.catalog-card-copy small { color: #d9ad35; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.catalog-card-copy strong { margin: 15px 0; font-family: var(--display); font-size: 21px; font-weight: 500; line-height: 1.3; }
.catalog-card-copy p, .product-card p { margin: 0 0 20px; color: rgba(255,255,255,.48); font-size: 11px; line-height: 1.7; }
.catalog-card-copy b, .product-card b { margin-top: auto; color: #e7c65d; font-size: 10px; }
.catalog-cta { margin: 0 0 100px; padding: 48px; display: flex; align-items: center; gap: 45px; border: 1px solid rgba(213,169,45,.25); background: linear-gradient(135deg,#15170f,#0b0c09); }
.catalog-cta > div { margin-right: auto; }
.catalog-cta p { max-width: 720px; margin: 16px 0 0; color: rgba(255,255,255,.5); font-size: 12px; line-height: 1.7; }
.catalog-cta > a { flex: 0 0 auto; padding: 17px 22px; color: #090a08; background: #d9ad35; font-size: 11px; font-weight: 800; }
.category-hero { min-height: 560px; display: grid; grid-template-columns: .85fr 1.15fr; border: 1px solid rgba(255,255,255,.1); background: #10120e; }
.category-image, .product-detail-image { position: relative; min-height: 500px; display: grid; place-items: center; background: radial-gradient(circle,#34362a,#080907 70%); }
.category-image img, .product-detail-image img { width: 100%; height: 100%; max-height: 610px; padding: 50px; object-fit: contain; }
.category-image span, .product-detail-image span { position: absolute; top: 24px; left: 24px; padding: 7px 9px; border: 1px solid rgba(213,169,45,.35); color: #e7c65d; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.category-hero > div:last-child { padding: 65px; }
.category-hero h1, .product-detail h1 { font-size: clamp(38px,4vw,62px); }
.category-hero ul, .product-detail ul { margin: 30px 0 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.category-hero li, .product-detail li { position: relative; padding-left: 18px; color: rgba(255,255,255,.7); font-size: 12px; line-height: 1.6; }
.category-hero li::before, .product-detail li::before { content: ''; position: absolute; left: 0; top: .65em; width: 5px; height: 5px; background: #d9ad35; }
.product-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.product-card { min-width: 0; min-height: 430px; padding-bottom: 24px; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.1); background: #10120e; transition: transform .25s,border-color .25s; }
.product-card > span { position: relative; height: 210px; min-height: 0; flex: 0 0 210px; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle,#303227,#080907 70%); }
.product-card img { width: 100%; height: 100%; min-height: 0; padding: 25px; object-fit: contain; }
.product-card strong { padding: 23px 23px 0; font-family: var(--display); font-size: 15px; font-weight: 500; line-height: 1.35; }
.product-card p { padding: 0 23px; margin-top: 12px; }
.product-card b { padding: 0 23px; }
.product-detail { display: grid; grid-template-columns: .9fr 1.1fr; border: 1px solid rgba(255,255,255,.1); background: #10120e; }
.product-detail-copy { padding: 68px; }
.product-detail-copy section { margin: 38px 0; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.1); }
.product-detail-copy section h2 { margin: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.product-request { display: inline-flex; gap: 40px; margin-top: 10px; }
.related { padding-top: 80px; }
.catalog-site-footer { margin-top: 28px; }
.catalog-not-found { min-height: 70vh; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; }
.catalog-not-found > span { color: #d9ad35; font-family: var(--display); font-size: 18px; }
.catalog-not-found p { color: rgba(255,255,255,.5); }
.catalog-not-found a { margin-top: 25px; padding: 15px 20px; color: #090a08; background: #d9ad35; font-size: 11px; font-weight: 800; }
@media (max-width: 1050px) { .catalog-header nav { display: none; } .catalog-header-cta { margin-left: auto; } .catalog-grid { grid-template-columns: repeat(2,1fr); } .product-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 760px) { .catalog-page main { width: min(92vw,1420px); } .catalog-header { top: 8px; width: calc(100% - 16px); height: 60px; padding: 0 14px; } .catalog-header-cta { padding: 11px 12px; font-size: 9px; } .catalog-hero, .category-hero, .product-detail { grid-template-columns: 1fr; } .catalog-hero { padding-bottom: 50px; } .catalog-hero > div { padding: 35px 0 30px; } .catalog-hero > img { height: 310px; padding: 20px; } .catalog-hero h1 { font-size: 40px; } .catalog-grid, .product-grid { grid-template-columns: 1fr; } .catalog-section { padding: 70px 0; } .catalog-card-image { height: 230px; } .catalog-card-copy { min-height: 230px; padding: 24px; } .category-hero > div:last-child, .product-detail-copy { padding: 34px 24px; } .category-image, .product-detail-image { min-height: 300px; } .category-image img, .product-detail-image img { max-height: 340px; padding: 30px; } .product-card { min-height: 390px; } .catalog-cta { padding: 30px 24px; align-items: flex-start; flex-direction: column; } }
