/* The image atlas is shared by search, component cards and the 3D inspector. */
.catalog-photo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0 24px;color:#254833}
.catalog-photo-filter{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border:1px solid #b9c9ae;background:#f4f7ef;border-radius:7px;font-size:14px;cursor:pointer}
.catalog-photo-filter input{width:18px;height:18px;accent-color:#234d37;cursor:pointer}
.catalog-photo-filter:has(input:checked){background:#e4eddc;border-color:#416a47}
.catalog-photo-filter input:focus-visible{outline:3px solid #ad522c;outline-offset:3px}
.catalog-photo-total{font-size:12px;color:#53694c}
.catalog-part-media,.catalog-detail-media,.part-visual-media,.ex-part-media{display:flex;flex-direction:column;align-items:stretch;overflow:hidden;margin:0;background:#f5f6f1;border:1px solid #dce2d7;color:#425448;position:relative}
.catalog-part-media img,.catalog-detail-media img,.part-visual-media img,.ex-part-media img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;aspect-ratio:4/3;mix-blend-mode:multiply;padding:12px;box-sizing:border-box}
.catalog-part-media>span,.catalog-part-media figcaption,.catalog-detail-media>span,.catalog-detail-media figcaption,.part-visual-media>span,.part-visual-media figcaption,.ex-part-media>span,.ex-part-media figcaption{display:block;font-size:10px;line-height:1.65;letter-spacing:0;text-transform:none;padding:7px 10px;border-top:1px solid #dce2d7;color:#50614f;text-align:start}
.part-image-attribution{font-size:10px;line-height:1.8;overflow-wrap:anywhere}
.part-image-attribution a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.part-image-attribution:empty{display:none}
.parts-credits-link{font-size:11px;line-height:1.8;color:#4d6549;margin:10px 0 16px}
.parts-credits-link a{display:inline-block;min-height:28px;padding-block:4px;color:inherit;text-decoration:underline;text-underline-offset:3px}
.parts-credits-link a:focus-visible{outline:2px solid #ac4a23;outline-offset:3px}
.part-visual-picker .parts-credits-link{margin-bottom:0}
.catalog-part{padding:14px;gap:0;min-height:300px}
.catalog-part-media{margin:-14px -14px 16px;border:0;border-bottom:1px solid #d5decf}
.catalog-part-media img{transition:transform .25s ease;min-height:145px;max-height:205px}
.catalog-part:hover .catalog-part-media img{transform:scale(1.04)}
.catalog-part-top{margin-bottom:9px;align-items:center}
.catalog-part-icon svg{width:19px;height:19px}
.catalog-part-number{font-size:10px}
.catalog-part-category{font-size:10px}
.catalog-part-bottom{font-size:10px;gap:8px}
.catalog-dialog{width:min(1000px,calc(100% - 36px))}
#catalog-dialog-body{grid-template-columns:minmax(260px,.9fr) minmax(0,1.15fr)}
.catalog-dialog-art.catalog-dialog-visual{background:#e4eade;min-height:100%;padding:55px 22px 24px;gap:14px;align-items:stretch;justify-content:flex-start}
.catalog-detail-media{border-color:#cbd6c2;background:#f9faf5}
.catalog-dialog-visual>.catalog-detail-media{writing-mode:horizontal-tb;max-height:none;font:inherit;letter-spacing:normal}
.catalog-detail-media img{aspect-ratio:1/1;padding:20px;max-height:460px}
.catalog-detail-media>span,.catalog-detail-media figcaption{font-size:11px;padding:12px 14px}
.catalog-dialog-visual .part-image-attribution{color:#425438}
.ex-part-media{margin:0 0 12px;background:#eef1e9;border-color:#c6d1bd}
.ex-part-media img{max-height:225px}
.ex-part-media + .part-image-attribution{margin:-3px 0 15px;color:inherit;opacity:.85}
.part-visual-picker{padding:27px;margin:0 0 32px;background:#eef2e7;color:#203f2d;border:1px solid #d4dfca;border-radius:18px}
.part-visual-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:21px}
.part-visual-heading>div{max-width:660px}
.part-visual-heading h2{font-size:clamp(23px,2.5vw,34px);line-height:1.45;margin:6px 0 8px;letter-spacing:-.6px;color:#183c28}
.part-visual-heading p{font-size:13px;line-height:1.8;margin:0;color:#4b634b}
.part-visual-heading .section-kicker{font-size:10px;letter-spacing:1.4px;color:#607249}
.part-visual-heading .btn{flex-shrink:0;color:#254b32;border-color:#9bac8c;background:#f7f9f1;font-size:12px}
.part-visual-picker svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.part-visual-grid-label{font-size:11px;color:#5c704f;margin:0 0 11px;font-weight:600}
.part-visual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.part-visual-card{position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:start;border:1px solid #d4dfca;border-radius:10px;background:#fff;color:#213e2b;overflow:hidden;padding:0 0 15px;min-width:0;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.part-visual-card:hover{border-color:#829f6b;box-shadow:0 5px 17px #203f2d14}
.part-visual-card[aria-pressed=true]{border-color:#315b37;box-shadow:inset 0 0 0 2px #315b37}
.part-visual-card:focus-visible{outline:3px solid #ac4a23;outline-offset:3px}
.part-visual-media{border:0;border-bottom:1px solid #e1e7da;border-radius:0;margin-bottom:12px;background:#f8f9f5}
.part-visual-media img{height:158px;aspect-ratio:auto;padding:14px;transition:transform .2s}
.part-visual-card:hover img{transform:scale(1.035)}
.part-visual-card strong{font-size:14px;line-height:1.6;font-weight:600;padding-inline:15px 36px;overflow-wrap:anywhere}
.part-visual-category{display:block;padding-inline:15px;font-size:10px;line-height:1.6;color:#627555;margin-bottom:5px}
.part-visual-action{position:absolute;inset-inline-end:12px;bottom:15px;display:flex;color:#b4532b}
.part-visual-scope{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.8;color:#53684a;margin:18px 0 0}
.part-visual-scope>svg{margin-top:2px}
.part-visual-empty{grid-column:1/-1;font-size:14px;line-height:1.8;padding:28px;text-align:center;border:1px dashed #abbc9b;border-radius:10px}
.part-visual-selection{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;margin-top:17px;background:#203f2d;border-radius:10px;color:#f3f7ec}
.part-visual-selection span,.part-visual-selection strong{display:block}
.part-visual-selection span{font-size:10px;letter-spacing:.3px;color:#c4d7b5}
.part-visual-selection strong{font-size:16px;line-height:1.7;margin:3px 0}
.part-visual-selection p{font-size:11px;margin:0;color:#cedfc1}
.part-visual-selection .part-image-attribution{margin-top:6px;color:#c6d8b9}
.part-visual-selection .btn{font-size:12px;border-color:#8ca67b;color:#eef6e5;flex-shrink:0;max-width:290px;white-space:normal;text-align:start}
html[dir=rtl] .part-visual-action svg,html[dir=rtl] .part-visual-heading .btn svg,html[dir=rtl] .part-visual-selection .btn svg{transform:rotate(180deg)}
@media(max-width:850px){.part-visual-picker{padding:22px}.part-visual-heading{align-items:flex-start}.part-visual-heading .btn{max-width:175px;white-space:normal;text-align:start}.part-visual-grid{gap:10px}.part-visual-media img{height:125px}.part-visual-card strong{font-size:12px}.catalog-dialog-art.catalog-dialog-visual{padding-inline:18px}#catalog-dialog-body{grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr)}}
@media(max-width:600px){
 .part-visual-picker{padding:18px 13px;margin-bottom:25px;border-radius:13px}.part-visual-heading{display:block;margin-bottom:20px}.part-visual-heading h2{font-size:26px;letter-spacing:-.4px}.part-visual-heading p{font-size:13px}.part-visual-heading .btn{display:inline-flex;max-width:none;min-height:44px;margin-top:15px;font-size:12px}.part-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.part-visual-media img{height:135px;padding:9px}.part-visual-card strong{font-size:13px;padding-inline:10px 28px}.part-visual-category{padding-inline:10px;font-size:10px}.part-visual-action{inset-inline-end:8px}.part-visual-action svg{width:15px}.part-visual-scope{font-size:12px}.part-visual-grid-label{font-size:12px}.part-visual-selection{display:block;padding:16px}.part-visual-selection .btn{margin-top:14px;min-height:44px}.part-visual-selection strong{font-size:15px}.part-visual-selection p,.part-visual-selection span{font-size:12px}.part-image-attribution{font-size:11px}.part-visual-media>span,.part-visual-media figcaption{padding:6px 8px;font-size:10px}
 .catalog-part{padding:13px;min-height:325px}.catalog-part-media{margin:-13px -13px 14px}.catalog-part-media img{min-height:135px;max-height:165px;padding:9px}.catalog-part-top{margin-bottom:8px}.catalog-part-category,.catalog-part-bottom,.catalog-part-number{font-size:11px}.catalog-dialog{width:calc(100% - 22px)}#catalog-dialog-body{display:block}.catalog-dialog-art.catalog-dialog-visual{padding:65px 19px 19px;min-height:0;display:flex;flex-direction:column;gap:12px}.catalog-detail-media img{aspect-ratio:4/3;max-height:290px}.catalog-dialog-content{padding:23px 20px}.catalog-part-media>span,.catalog-part-media figcaption{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.part-visual-card,.part-visual-card img,.catalog-part-media img{transition:none;transform:none!important}}
