/* ── Image Mask ───────────────────────────────────────────────────────────── */ .bkim-wrap { box-sizing: border-box; display: block; } .bkim-figure { margin: 0; display: inline-block; } .bkim-img { display: block; } /* Hover effects */ .bkim-img[data-hover="zoom"]:hover { transform: scale(calc(var(--bkim-scale, 108) / 100)); } .bkim-img[data-hover="zoom-out"]:hover { transform: scale(calc(var(--bkim-scale, 92) / 100)); } .bkim-img[data-hover="rotate"]:hover { transform: rotate(8deg) scale(1.06); } .bkim-caption { margin: 12px 0 0; font-style: italic; padding: 0; font-family: var(--bkim-cp-font-family, inherit); font-size: var(--bkim-cp-font-size-d, var(--bkim-cp-sz, 14px)); font-weight: var(--bkim-cp-font-weight, var(--bkim-cp-w, 400)); text-decoration: var(--bkim-cp-text-decoration, none); text-transform: var(--bkim-cp-text-transform, none); line-height: var(--bkim-cp-line-height-d, var(--bkim-cp-lh, 1.4)); letter-spacing: var(--bkim-cp-letter-spacing-d, normal); word-spacing: var(--bkim-cp-word-spacing-d, normal); } /* ── Responsive typography ────────────────────────────────────── */ @media (max-width: 1024px) { .bkim-caption { font-size: var(--bkim-cp-font-size-t, var(--bkim-cp-font-size-d, var(--bkim-cp-sz, 14px))); line-height: var(--bkim-cp-line-height-t, var(--bkim-cp-line-height-d, var(--bkim-cp-lh, 1.4))); letter-spacing: var(--bkim-cp-letter-spacing-t, var(--bkim-cp-letter-spacing-d, normal)); word-spacing: var(--bkim-cp-word-spacing-t, var(--bkim-cp-word-spacing-d, normal)); } } @media (max-width: 767px) { .bkim-caption { font-size: var(--bkim-cp-font-size-m, var(--bkim-cp-font-size-t, var(--bkim-cp-font-size-d, var(--bkim-cp-sz, 14px)))); line-height: var(--bkim-cp-line-height-m, var(--bkim-cp-line-height-t, var(--bkim-cp-line-height-d, var(--bkim-cp-lh, 1.4)))); letter-spacing: var(--bkim-cp-letter-spacing-m, var(--bkim-cp-letter-spacing-t, var(--bkim-cp-letter-spacing-d, normal))); word-spacing: var(--bkim-cp-word-spacing-m, var(--bkim-cp-word-spacing-t, var(--bkim-cp-word-spacing-d, normal))); } } /* Alignment helpers */ .bkim-wrap.has-text-align-left { text-align: left; } .bkim-wrap.has-text-align-center { text-align: center; } .bkim-wrap.has-text-align-right { text-align: right; } @media (prefers-reduced-motion: reduce) { .bkim-img { transition: none !important; } }