/* es-m4 1.0 — фото крупно; кнопка в статьях блога (05.11.2026) */
img.esm4-zoom { cursor: zoom-in; }
html.esm4-lock, html.esm4-lock body { overflow: hidden !important; }
#esm4-lb { position: fixed; inset: 0; z-index: 100000; display: none; align-items: center; justify-content: center; flex-direction: column; gap: 14px;
  background: rgba(8, 7, 6, .94); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); padding: 56px 12px calc(20px + env(safe-area-inset-bottom, 0px)); font-family: Montserrat, system-ui, sans-serif; }
#esm4-lb.on { display: flex; animation: esm4In .25s ease; }
@keyframes esm4In { from { opacity: 0; } to { opacity: 1; } }
#esm4-lb figure { margin: 0; max-width: min(1100px, 100%); display: flex; flex-direction: column; align-items: center; gap: 10px; }
#esm4-lb img { max-width: 100%; max-height: calc(100vh - 210px); max-height: calc(100dvh - 210px); border-radius: 14px; object-fit: contain; box-shadow: 0 20px 60px rgba(0, 0, 0, .6); }
#esm4-lb figcaption { display: flex; gap: 12px; align-items: baseline; color: #d8cfc0; font-size: 13.5px; text-align: center; }
#esm4-lb figcaption .n { color: #8c8578; font-size: 12px; white-space: nowrap; }
#esm4-lb .x, #esm4-lb .pv, #esm4-lb .nx { position: absolute; background: rgba(12, 11, 9, .7); border: 1px solid rgba(201, 169, 110, .35); color: #e6cd98; border-radius: 50%; width: 46px; height: 46px; font-size: 26px; line-height: 1; cursor: pointer; display: grid; place-items: center; }
#esm4-lb .x { top: 12px; right: 12px; }
#esm4-lb .pv { left: 14px; top: 50%; transform: translateY(-50%); } #esm4-lb .nx { right: 14px; top: 50%; transform: translateY(-50%); }
#esm4-lb.one .pv, #esm4-lb.one .nx { display: none; }
#esm4-lb .cta { padding: 14px 30px; border-radius: 999px; background: #c9a96e; color: #0c0b09 !important; font-weight: 700; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; text-decoration: none; box-shadow: 0 8px 26px rgba(201, 169, 110, .35); }
@media (max-width: 640px) { #esm4-lb .pv, #esm4-lb .nx { top: auto; bottom: calc(22px + env(safe-area-inset-bottom, 0px)); transform: none; width: 42px; height: 42px; } }

a.esm4-tl { color: inherit !important; text-decoration: none; border-bottom: 1px dotted rgba(201, 169, 110, .6); }
a.esm4-tl:hover { color: #c9a96e !important; }
aside.esm4-cta { display: flex; gap: 18px 24px; align-items: center; justify-content: space-between; flex-wrap: wrap; margin: 28px 0 32px; padding: 20px 22px; border-radius: 16px;
  border: 1px solid rgba(201, 169, 110, .45); background: linear-gradient(120deg, rgba(201, 169, 110, .14), rgba(201, 169, 110, .03)), #14120f; color: #f5f0e8; font-family: Montserrat, system-ui, sans-serif; }
aside.esm4-cta b { display: block; font-family: "Cormorant Garamond", Georgia, serif; font-size: 24px; font-weight: 500; line-height: 1.15; color: #f5f0e8; margin-bottom: 6px; }
aside.esm4-cta p { margin: 0; font-size: 14px; line-height: 1.55; color: #cfc6b6; max-width: 560px; }
aside.esm4-cta .b { display: flex; gap: 10px; flex-wrap: wrap; }
aside.esm4-cta .b a { padding: 13px 22px; border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; text-decoration: none !important; white-space: nowrap; }
aside.esm4-cta .b a.g { background: #c9a96e; color: #0c0b09 !important; }
aside.esm4-cta .b a.o { border: 1px solid rgba(201, 169, 110, .6); color: #e6cd98 !important; }
@media (max-width: 640px) { aside.esm4-cta { padding: 18px; } aside.esm4-cta .b, aside.esm4-cta .b a { width: 100%; text-align: center; } }
