:root{font-family:system-ui,sans-serif;color:#eef0f3;background:#0b0d10;color-scheme:dark}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto;padding:24px}.brand{font-weight:800;letter-spacing:2px;color:#fff}a{color:#d4d7dd;text-decoration:none}main{max-width:1200px;margin:auto;padding:20px 24px 64px}.intro{max-width:660px;margin-bottom:32px}.intro>span{color:#ff374d;font-size:14px;font-weight:700;letter-spacing:2px}h1{font-size:48px;margin:14px 0}p{line-height:1.6}label{display:block;color:#bdc2cb;margin:18px 0 8px}input,select{width:100%;padding:15px;border:1px solid #42464d;border-radius:12px;background:#12151a;font:inherit;color:inherit}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}article{border:1px solid #333841;border-radius:20px;overflow:hidden;background:#14171c}article img,.photo-placeholder{width:100%;height:230px;object-fit:contain;background:#1b1f25}.photo-placeholder{display:flex;align-items:center;justify-content:center;color:#67707d;letter-spacing:3px}.card-body{padding:24px}h2{font-size:25px;margin:12px 0}.card-body small,.muted{color:#aab1bd}.tag{font-size:14px;border:1px solid #444b56;border-radius:30px;padding:6px 12px;display:inline-block}button,.button{font:inherit;border:1px solid #ff354b;color:#fff;background:#da1830;padding:13px 20px;border-radius:30px;cursor:pointer;display:inline-block;margin-top:18px}article button{display:block;width:100%}dialog{width:min(560px,calc(100% - 24px));padding:30px;border:1px solid #434a55;border-radius:20px;background:#11141a;color:#eef0f3;max-height:90vh;overflow:auto}dialog::backdrop{background:#000b}.close{float:right;border:1px solid #444;background:transparent;margin:0;padding:4px 12px;font-size:24px}#result{margin-top:24px;padding:16px;background:#20252d;border-radius:12px;white-space:pre-line}#contact-actions .button{background:transparent;border-color:#626b79}.empty{padding:50px 20px;text-align:center}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.grid{grid-template-columns:1fr}h1{font-size:36px}main,header{padding-left:18px;padding-right:18px}.card-body{padding:20px}}

.order-actions{display:flex;gap:12px;flex-wrap:wrap}.order-actions button{flex:1}#minimum-order{max-width:520px}#order-status{margin-top:16px}textarea{width:100%;min-height:90px;font:inherit;padding:12px;border:1px solid #d6dde8;border-radius:8px}#contact-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}

.store-gallery .gallery-main{width:100%;height:230px;object-fit:contain;background:#1b1f25;border-radius:0}.gallery-thumbnails{display:flex;gap:8px;padding:10px;overflow-x:auto}.gallery-thumbnails button{display:block;flex:0 0 58px;width:58px;height:58px;padding:3px;margin:0;border:2px solid #444b56;border-radius:8px;background:#1b1f25}.gallery-thumbnails button[aria-pressed=true]{border-color:#ff374d}.gallery-thumbnails button:focus-visible{outline:2px solid white;outline-offset:2px}.gallery-thumbnails img{width:100%;height:100%;object-fit:contain;background:transparent}.product-dimensions{font-size:15px;color:#d4d7dd}#quote .store-gallery{margin:18px 0}#quote .gallery-main{border-radius:10px}

.currency-picker{margin:20px 0}.currency-picker label{margin:0 0 8px}.currency-picker select{max-width:260px}.currency-picker p,.currency-payment{font-size:14px;color:#bdc2cb;line-height:1.5}.currency-payment[hidden]{display:none}button:disabled{opacity:.6;cursor:wait}

#category-control{display:grid;gap:8px;margin:16px 0 24px}#category-filter{width:100%;max-width:650px;padding:12px;border-radius:8px;background:#fff;color:#17212c;border:1px solid #9aa6b2}

/* Product details and full-size gallery, 1.4.1 */
.store-gallery .gallery-open{display:block;position:relative;width:100%;padding:0;margin:0;border:0;border-radius:0;background:#1b1f25;overflow:hidden}
article .store-gallery .gallery-main{display:block;height:auto;aspect-ratio:1;object-fit:contain;padding:12px}
.photo-hint{position:absolute;bottom:12px;right:12px;background:#080b10dc;border:1px solid #ffffff30;border-radius:20px;padding:6px 12px;font-size:13px;color:#fff}
article .product-title{display:inline;text-align:left;width:auto;padding:0;margin:0;border:0;border-radius:0;background:transparent;font:inherit;font-weight:inherit;line-height:inherit;color:inherit}
article .product-title:hover{text-decoration:underline;text-underline-offset:4px}
.card-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-summary:empty{display:none}
article .details-button{background:transparent;border-color:#66707e;margin-top:20px}article [data-product]{margin-top:10px}
button:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:4px}
#quote{width:min(800px,calc(100% - 24px));padding:28px}#quote h2{padding-right:40px;overflow-wrap:anywhere}
#quote .gallery-main{display:block;height:min(52vh,460px);object-fit:contain;padding:12px}#quote .gallery-open{border-radius:12px}
.full-description{white-space:pre-wrap;overflow-wrap:anywhere}.product-specs{margin:20px 0}.product-specs>div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #333841}.product-specs dt{color:#aab1bd}.product-specs dd{margin:0;overflow-wrap:anywhere}
#photo-viewer{width:calc(100% - 24px);max-width:1500px;height:calc(100dvh - 24px);max-height:none;padding:12px;overflow:hidden;background:#090c10}
#photo-viewer[open]{display:flex;flex-direction:column;gap:10px}#photo-viewer::backdrop{background:#000e}
.viewer-toolbar{display:flex;align-items:center;gap:10px;flex-shrink:0}.viewer-toolbar span{margin-right:auto;color:#cbd2de}.viewer-toolbar button,.viewer-navigation button{margin:0;background:#1b2029;border-color:#647084;padding:9px 14px}#photo-close{font-size:24px;line-height:1}
.viewer-stage{flex:1;min-height:0;overflow:auto;display:block;border-radius:8px;background:#11151b}
#large-photo{display:block;width:100%;height:100%;object-fit:contain;cursor:zoom-in}.zoomed #large-photo{width:200%;height:200%;max-width:none;max-height:none;cursor:zoom-out}
.viewer-navigation{display:flex;justify-content:space-between;gap:12px;flex-shrink:0}.viewer-navigation button[hidden]{display:none}
@media(max-width:600px){#quote{padding:18px}.product-specs>div{grid-template-columns:95px 1fr}#photo-viewer{width:100%;height:100dvh;border-radius:0;padding:10px}.viewer-toolbar{font-size:14px}.viewer-toolbar button{padding:8px 10px}#quote .gallery-main{height:38vh}}
article>.photo-placeholder{height:auto;aspect-ratio:1}.grid article{display:flex;flex-direction:column}.card-body{flex:1;display:flex;flex-direction:column}.card-body .tag{align-self:flex-start;margin-bottom:14px}.card-body .details-button{margin-top:auto}

.card-price{font-size:1.35rem;font-weight:700;margin:12px 0 4px}.price-note{font-size:.85rem;opacity:.8;margin:0 0 12px}.shop-categories{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.shop-categories button{width:auto;min-width:0;padding:10px 16px}.shop-categories button[aria-pressed="true"]{outline:2px solid currentColor;outline-offset:3px}
