
/* Cursor fix for popup triggers added by links/classes in Gutenberg or imported Popup Maker triggers */
a[href^="#iaf-popup-"],
a[href^="#popmake-"],
a[href^="#pum-"],
button[class*="iaf-popup-"],
button[class*="popmake-"],
button[class*="pum-"],
[class*="iaf-popup-"] img,
[class*="popmake-"] img,
[class*="pum-"] img,
a[href^="#iaf-popup-"] img,
a[href^="#popmake-"] img,
a[href^="#pum-"] img,
.iaf-lw-trigger-card,
.iaf-lw-trigger-card * {
  cursor: pointer !important;
}

.iaf-lw-gallery {
  display: grid;
  gap: 22px;
  align-items: start;
}
.iaf-lw-columns-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.iaf-lw-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.iaf-lw-columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.iaf-lw-columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.iaf-lw-columns-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.iaf-lw-columns-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.iaf-lw-trigger-card {
  display: block;
  color: inherit;
  text-align: center;
  text-decoration: none;
}
.iaf-lw-trigger-card img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  transition: transform .2s ease, filter .2s ease;
}
.iaf-lw-trigger-card:hover img {
  transform: translateY(-2px) scale(1.01);
  filter: brightness(1.08);
}
.iaf-lw-trigger-card span {
  display: block;
  margin-top: 10px;
}
.iaf-lw-overlay {
  position: fixed;
  inset: 0;
  z-index: 999998;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0,0,0,.76);
  backdrop-filter: blur(6px);
}
.iaf-lw-overlay.is-open { display: flex; }
body.iaf-lw-lock { overflow: hidden !important; }
.iaf-lw-modal {
  position: relative;
  width: min(920px, 94vw);
  max-height: 88vh;
  overflow: auto;
  border: 1px solid rgba(212,175,55,.58);
  border-radius: 22px;
  background:
    linear-gradient(rgba(5,5,16,.88), rgba(5,5,16,.94)),
    url('https://infinityartfusion.com/wp-content/uploads/2025/05/starry_sky_4K_hq-scaled.webp');
  background-size: cover;
  background-position: center;
  color: #fff;
  box-shadow: 0 0 40px rgba(212,175,55,.30);
  padding: 30px;
}
.iaf-lw-modal.size-compact { width: min(640px, 94vw); }
.iaf-lw-modal.size-wide { width: min(1050px, 94vw); }
.iaf-lw-close-x {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(212,175,55,.55);
  border-radius: 50%;
  background: rgba(0,0,0,.32);
  color: #fff8dc;
  font-size: 24px;
  line-height: 34px;
  cursor: pointer;
}
.iaf-lw-inner {
  display: grid;
  grid-template-columns: minmax(220px, 350px) 1fr;
  gap: 28px;
  align-items: center;
}
.iaf-lw-modal.layout-image-right .iaf-lw-image-wrap { order: 2; }
.iaf-lw-modal.layout-image-right .iaf-lw-text-wrap { order: 1; }
.iaf-lw-modal.layout-image-top .iaf-lw-inner { grid-template-columns: 1fr; text-align: center; }
.iaf-lw-modal.layout-legacy .iaf-lw-inner {
  display: block;
  text-align: center;
}
.iaf-lw-modal.layout-legacy .iaf-lw-image-wrap {
  display: none;
}
.iaf-lw-modal.layout-legacy .iaf-lw-content {
  max-width: 900px;
  margin: 0 auto;
}
.iaf-lw-modal.layout-legacy .iaf-lw-content img {
  max-width: 100%;
  height: auto;
  border-radius: 14px;
}
.iaf-lw-modal.layout-legacy .iaf-lw-content figure {
  margin-left: auto;
  margin-right: auto;
}

.iaf-lw-image {
  display: none;
  width: 100%;
  max-height: 540px;
  object-fit: contain;
  border-radius: 14px;
}
.iaf-lw-title {
  margin: 0 0 16px 0;
  font-family: Cinzel, Georgia, serif;
  font-size: clamp(26px, 4vw, 44px);
  line-height: 1.12;
  color: #d4af37;
}
.iaf-lw-content {
  font-size: 18px;
  line-height: 1.62;
  color: #f7f7f7;
}
.iaf-lw-content p:first-child { margin-top: 0; }
.iaf-lw-button {
  display: none;
  margin-top: 22px;
  padding: 12px 22px;
  border: 1px solid #d4af37;
  border-radius: 999px;
  background: rgba(212,175,55,.16);
  color: #fff8dc;
  text-decoration: none;
}
.iaf-lw-button:hover { background: rgba(212,175,55,.32); color: #fff; }
.iaf-lw-close-bottom {
  display: inline-block;
  margin-top: 16px;
  border: 0;
  background: transparent;
  color: #fff8dc;
  text-decoration: underline;
  cursor: pointer;
}
.iaf-lw-loading {
  color: #fff8dc;
  font-size: 18px;
  text-align: center;
}
@media (max-width: 760px) {
  .iaf-lw-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .iaf-lw-inner { grid-template-columns: 1fr; text-align: center; }
  .iaf-lw-modal { padding: 26px 18px; }
  .iaf-lw-content { font-size: 16px; }
}
@media (max-width: 420px) {
  .iaf-lw-gallery { grid-template-columns: 1fr; }
}

/* 1.0.12: stronger clickable cursor support for linked images, captions and containers */
a[href*="#iaf-popup-"],
a[href*="#popmake-"],
a[href*="#pum-"],
.iaf-lw-clickable,
.iaf-lw-clickable *,
:where(figure,.wp-block-image,.wp-block-cover,.wp-block-group,.wp-block-column,.wp-block-media-text):has(a[href*="#iaf-popup-"]),
:where(figure,.wp-block-image,.wp-block-cover,.wp-block-group,.wp-block-column,.wp-block-media-text):has(a[href*="#popmake-"]),
:where(figure,.wp-block-image,.wp-block-cover,.wp-block-group,.wp-block-column,.wp-block-media-text):has(a[href*="#pum-"]) {
  cursor: pointer !important;
}
