.category-product{min-width:0;align-self:start}.category-product .product-card-body{min-width:0}.card-specs{margin:12px 0 20px;overflow-wrap:anywhere;line-height:1.6;font-size:15px}.card-specs h4{margin:0 0 8px}.card-specs ul{padding-left:20px;margin:0}.card-specs li{margin:3px 0;white-space:pre-wrap}.card-specs summary{cursor:pointer;color:#176d9c;padding:12px 0;font-weight:600}.category-product .product-meta{flex-wrap:wrap;gap:10px;justify-content:center;text-align:center}.category-product{--card-background:#fff;background:var(--card-background)}.category-product .card-stock{color:var(--card-background);margin-top:3px}.image-enlarge{font:inherit;background:none;border:1px solid currentColor;border-radius:6px;padding:8px 12px;cursor:pointer}.image-enlarge:disabled{color:#666;cursor:default}.product-lightbox{box-sizing:border-box;padding:0;border:0;border-radius:8px;width:min(1000px,calc(100vw - 32px),calc(100dvh - 32px));height:min(1000px,calc(100vw - 32px),calc(100dvh - 32px));max-width:none;max-height:none;overflow:hidden;background:#fff}.product-lightbox::backdrop{background:rgba(0,0,0,.8)}.product-lightbox>img{display:block;width:100%;height:100%;object-fit:contain}.product-lightbox>.lightbox-close{position:absolute;right:8px;top:8px;z-index:1;display:grid;place-items:center;box-sizing:border-box;width:48px;height:48px;min-width:44px;min-height:44px;padding:0;background:#142d40;color:white;border:2px solid white;border-radius:6px;font:32px/1 Arial,sans-serif;cursor:pointer}.public-theme .product-lightbox>.lightbox-close:hover{background:#28465e;color:#fff}.product-lightbox>.lightbox-close:focus-visible{outline:3px solid #5eead4;outline-offset:3px}.lightbox-status{position:absolute;bottom:10px;left:10px;right:10px;text-align:center;background:#fff;color:#333}.lightbox-status:empty{display:none}.image-drop{padding:20px;border:2px dashed #748b9d;border-radius:8px;background:#f4f8fb}.image-drop.is-dragging{border-color:#007db4;background:#dff2ff}.image-drop[data-state=error]{border-color:#b22424}.image-drop input{max-width:100%}.image-drop button{margin-top:8px}.image-drop-preview{display:block;max-width:100%;max-height:220px;object-fit:contain}.image-drop-preview[hidden]{display:none}

.category-product button.product-image{position:relative;width:100%;padding:0;border:0;border-radius:0;display:block;cursor:zoom-in}.category-product button.product-image:focus-visible{outline:3px solid #007db4;outline-offset:-3px}.image-zoom-badge{position:absolute;right:10px;bottom:10px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#17364acb;color:#fff;font-size:28px;line-height:1;pointer-events:none}

.category-breadcrumb-strip{background:#fff;padding:18px max(24px,calc((100% - 1200px)/2));text-align:left}.category-breadcrumb-strip .breadcrumbs{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin:0;color:#425466;font-size:14px}.category-breadcrumb-strip .breadcrumbs a{color:#17658d}.category-breadcrumb-strip+.catalog-section{padding-top:30px}.category-breadcrumb-strip [aria-current]{overflow-wrap:anywhere}@media(max-width:600px){.category-breadcrumb-strip{padding:14px 20px}.category-breadcrumb-strip+.catalog-section{padding-top:24px}}

/* Category cards only: square frame, complete original image, no hover crop. */ .category-product > .product-image { position:relative; display:block; box-sizing:border-box; width:100%; height:auto; aspect-ratio:1 / 1; padding:0; border:0; } .category-product > .product-image > img { position:absolute; inset:0; display:block; width:100%; height:100%; aspect-ratio:auto; object-fit:contain; object-position:center; transform:none; }
/* Detail photo frame and accessible contact CTA; no shared image rules. */ .product-detail .product-detail-image { position:relative; box-sizing:border-box; width:100%; min-width:0; height:auto; aspect-ratio:1 / 1; } .product-detail .product-detail-image > img { position:absolute; inset:0; display:block; width:100%; height:100%; aspect-ratio:auto; object-fit:contain; object-position:center; } .product-detail .product-detail-image > p { position:absolute; bottom:8px; left:12px; right:12px; margin:0; text-align:center; } .product-detail .product-info { min-width:0; overflow-wrap:anywhere; } .public-theme .product-detail .product-info .button.quote-trigger, .public-theme .product-detail .product-info .button.quote-trigger:visited { color:#0b1320; background:#83e8d6; } .public-theme .product-detail .product-info .button.quote-trigger:is(:hover,:focus-visible) { color:#0b1320; background:#a0f1e7; } .public-theme .product-detail .product-info .button.quote-trigger:focus-visible { outline:3px solid #83e8d6; outline-offset:3px; } .public-theme .product-detail .product-info .button.quote-trigger * { color:inherit; }
.category-product:hover > .product-image > img { transform:none; }

/* Category product names are plain headings, not detail-page links. */
.category-product .product-card-body > h3 { color:inherit; cursor:auto; text-decoration:none; overflow-wrap:anywhere; }
.public-theme .category-product .product-card-body > h3 { color:var(--ink); }

/* Product-only viewport-fit canvas; caption stays within the actual image. */
.public-theme dialog.product-lightbox{inset:0;margin:0;width:100vw;width:100dvw;height:100vh;height:100dvh;max-width:none;max-height:none;padding:0;border-radius:0;box-sizing:border-box;background:transparent!important;overflow:hidden;color:#f3f5f7;box-shadow:none}
/* One dimming layer only: 85% opaque gutters, above the unchanged page. ID specificity beats the shared dark-theme :is() backdrop rule. */
.public-theme dialog.product-lightbox:is(dialog,#product-lightbox)::backdrop{background:rgba(0,0,0,.85)}
.product-lightbox::before{content:none}
.product-lightbox .lightbox-content{display:flex;align-items:center;justify-content:center;width:100%;height:100%;max-height:none;overflow:hidden;overscroll-behavior:contain;outline-offset:-3px;background:transparent}
.product-lightbox .lightbox-image-region{position:relative;flex:none;box-sizing:content-box;width:var(--image-width,0px);height:var(--image-height,0px);margin:0;background:#fff}
.product-lightbox .lightbox-image-region>img{display:block;width:var(--image-width,0px);height:var(--image-height,0px);min-width:0;min-height:0;max-width:none;max-height:none;object-fit:contain;transform:none}
.public-theme .product-lightbox .lightbox-caption{position:absolute;box-sizing:border-box;left:0;right:0;bottom:0;height:33.3333333333%;min-height:0;padding:8px 14px;background:rgba(49,54,60,.82);color:#f3f5f7;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y;overflow-wrap:anywhere;user-select:text;outline-offset:-3px}
.public-theme .lightbox-caption :is(h2,h3,p,li,strong,em,th,td){color:inherit}
.lightbox-caption .lightbox-title{font-size:18px;line-height:1.35;margin:0 0 6px;white-space:pre-wrap}
.lightbox-caption h3{font-size:14px;line-height:1.35;margin:0 0 4px}
.product-lightbox .lightbox-specs{font-size:14px;line-height:1.35}
.product-lightbox .lightbox-caption :is(p,ul,ol){margin-top:0;margin-bottom:4px}
.product-lightbox .lightbox-caption li{margin:1px 0}
@media(max-width:600px){.lightbox-caption .lightbox-title{font-size:16px}.product-lightbox .lightbox-specs,.lightbox-caption h3{font-size:13px}.public-theme .product-lightbox .lightbox-caption{padding:6px 10px}}
.product-specs-content{min-width:0;overflow-wrap:anywhere;line-height:1.7}
.product-specs-content li{white-space:pre-wrap}
.product-specs-content :is(ul,ol){padding-left:24px}
.product-specs-content table{width:100%;table-layout:fixed;border-collapse:collapse}
.product-specs-content :is(td,th){padding:8px;border:1px solid #78838b;overflow-wrap:anywhere}
.public-theme .product-specs-content a{color:#9de8ff;text-decoration:underline;overflow-wrap:anywhere}
.public-theme .product-specs-content a:hover{color:#fff}
.product-lightbox>.lightbox-close{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:2}


/* Native same-page groups: no filters, no product hiding. */
.product-group-nav{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;max-width:1200px;margin:24px auto;padding:0 24px}
.product-group-nav > a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:0;max-width:100%;padding:10px 18px;border:1px solid #365b68;border-radius:999px;background:#132332;color:#d7f5f5;font-size:15px;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;white-space:normal;overflow-wrap:anywhere;transition:background-color .16s ease,border-color .16s ease,color .16s ease}
.product-group-nav > a:visited{color:#d7f5f5}
.product-group-nav > a:hover{background:#1d3945;border-color:#83e8d6;color:#fff;text-decoration:none}
.product-group-nav > a:focus-visible{background:#1d3945;border-color:#83e8d6;color:#fff;outline:3px solid #83e8d6;outline-offset:3px}
@media(max-width:600px){.product-group-nav{gap:8px;padding-inline:20px;margin-block:20px}.product-group-nav > a{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.product-group-nav > a{transition:none}}
.product-group-section{scroll-margin-top:180px}.product-group-section h2{overflow-wrap:anywhere}@media(max-width:600px){.product-group-section{scroll-margin-top:200px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
