/* Mobile-responsive overlay — added by VISIONEFX converter. */
html { -webkit-text-size-adjust: 100%; }
* { box-sizing: border-box; }
body { overflow-x: hidden; }
h1 { line-height: 1.15; padding: 18px 14px 4px; }
body > div[align="center"] { padding: 0 14px; }
/* Table conforms to the images' natural size — centered, never upscaled.
   Images stay crisp; on narrow screens they scale DOWN to fit. */
table { width: auto !important; max-width: 100% !important; margin: 0 auto; }
table td { vertical-align: top; }
table td img { width: auto !important; height: auto !important; max-width: 100% !important; }
/* Responsive video + embeds (mp4, YouTube, Vimeo, etc.) */
video, embed, object { max-width: 100% !important; height: auto !important; }
iframe { max-width: 100% !important; }
iframe[src*="youtube"], iframe[src*="youtu.be"], iframe[src*="vimeo"],
iframe[src*="player."], iframe[src*="dailymotion"], iframe[src*="wistia"] {
  width: 100% !important; height: auto !important; aspect-ratio: 16 / 9;
}
/* old embeds wrapped in a fixed-size element still scale down */
td video, td iframe, td embed, td object { width: 100% !important; }
@media (max-width: 760px) {
  table, table tbody, table tr, table td { display: block !important; width: 100% !important; height: auto !important; }
  table td { border: 0 !important; padding: 10px 12px !important; text-align: left !important; }
  table td img { width: 100% !important; }
  td[width="12"] { display: none !important; }
  h1 { font-size: 1.5em !important; }
  body > div[align="center"] a { display: inline-block; padding: 7px 5px; }
}
#vfxlb { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 30px; background: rgba(10,10,11,0.93); }
#vfxlb.open { display: flex; }
#vfxlb img { max-width: 92vw; max-height: 84vh; object-fit: contain; border-radius: 6px; box-shadow: 0 30px 80px rgba(0,0,0,0.6); cursor: zoom-in; }
#vfxlb.zoomed { align-items: flex-start; justify-content: center; overflow: auto; padding: 0; }
#vfxlb.zoomed img { max-width: none; max-height: none; width: auto; height: auto; border-radius: 0; cursor: zoom-out; }
.vfxlb-cap { position: absolute; top: 18px; left: 22px; right: 120px; font: 12px/1.4 Verdana, sans-serif; letter-spacing: .05em; text-transform: uppercase; color: #cfd0d2; }
.vfxlb-count { position: absolute; top: 18px; right: 70px; font: 12px Verdana, sans-serif; color: #9a9ba0; }
.vfxlb-btn { position: absolute; display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 0; border-radius: 999px; cursor: pointer; color: #fff; background: rgba(255,255,255,0.10); -webkit-tap-highlight-color: transparent; }
.vfxlb-btn:hover { background: rgba(255,255,255,0.20); }
.vfxlb-btn svg { width: 24px; height: 24px; }
#vfxlb-close { top: 14px; right: 16px; background: transparent; }
#vfxlb-prev { left: 14px; top: 50%; transform: translateY(-50%); }
#vfxlb-next { right: 14px; top: 50%; transform: translateY(-50%); }
@media (max-width: 760px) { .vfxlb-btn { width: 40px; height: 40px; } .vfxlb-cap { right: 90px; font-size: 11px; } }