.content-image__demo-note { display: block; margin-top: 4px; color: var(--brass); font: inherit; letter-spacing: .02em; }
.image-zoom-trigger { position: relative; display: block; width: 100%; padding: 0; color: inherit; text-align: inherit; background: none; border: 0; cursor: zoom-in; }
.image-zoom-trigger .product-window { display: block; transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
.image-zoom-trigger:hover .product-window { border-color: color-mix(in srgb, var(--brass) 58%, var(--line)); box-shadow: 0 22px 54px rgba(27, 23, 18, .14); transform: translateY(-2px); }
.image-zoom-trigger:focus-visible { outline: 2px solid var(--brass); outline-offset: 5px; }
.image-zoom-hint { position: absolute; right: 13px; bottom: 13px; display: grid; place-items: center; width: 34px; height: 34px; color: var(--paper); font: 15px/1 var(--mono); background: rgba(15, 22, 21, .82); border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; box-shadow: 0 8px 22px rgba(0, 0, 0, .22); backdrop-filter: blur(8px); transition: transform 180ms ease, background 180ms ease; }
.image-zoom-trigger:hover .image-zoom-hint { background: var(--ink); transform: scale(1.06); }
.image-lightbox { width: min(96vw, 1680px); max-width: none; height: min(94vh, 1120px); max-height: none; padding: 0; overflow: hidden; color: var(--paper); background: #09100f; border: 1px solid rgba(211, 165, 104, .45); border-radius: 12px; box-shadow: 0 36px 100px rgba(0, 0, 0, .58); }
.image-lightbox::backdrop { background: rgba(5, 9, 8, .86); backdrop-filter: blur(9px); }
.image-lightbox__stage { display: grid; place-items: center; width: 100%; height: 100%; padding: 52px 18px 18px; overflow: auto; }
.image-lightbox__stage img { display: block; width: auto; max-width: 100%; height: auto; max-height: calc(94vh - 70px); object-fit: contain; background: #080e0d; box-shadow: 0 18px 54px rgba(0, 0, 0, .42); }
.image-lightbox__stage img.is-edge-trimmed, .content-image--operus-search .product-window img { clip-path: inset(4px 0 0 4px); }
.image-lightbox__close { position: absolute; z-index: 1; top: 12px; right: 12px; display: grid; place-items: center; width: 34px; height: 34px; padding: 0; color: #f2eadc; font: 22px/1 var(--sans); background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; cursor: pointer; }
.image-lightbox__close:hover { color: #111917; background: var(--brass); border-color: var(--brass); }
.image-lightbox__close:focus-visible { outline: 2px solid var(--brass); outline-offset: 3px; }
.content-image--product-crop .product-window picture { aspect-ratio: 16 / 9; overflow: hidden; }
.content-image--product-crop .product-window img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.content-image--product-crop-main .product-window img { width: 165%; max-width: none; height: auto; min-height: 100%; object-fit: cover; object-position: top center; transform: translateX(-19.7%); }
.content-image--product.content-image--captioned { overflow: hidden; border: 1px solid #a98458; border-radius: 12px; background: #f4eee4; box-shadow: 0 18px 42px #33231714; }
.content-image--product.content-image--captioned .product-window { border: 0; border-radius: 0; box-shadow: none; }
.content-image--product.content-image--captioned .image-zoom-trigger:hover .product-window { border-color: transparent; box-shadow: none; transform: none; }
.content-image--product.content-image--captioned figcaption { margin: 0; padding: 14px 16px 15px; border-top: 1px solid #a984584d; background: #f4eee4; }
.content-image--product.content-image--captioned:has(.image-zoom-trigger:hover) { border-color: color-mix(in srgb, var(--brass) 68%, #a98458); box-shadow: 0 22px 54px rgba(27, 23, 18, .14); }
