.safg-wrap{background:var(--safg-bg);color:var(--safg-text)}.safg-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:18px}.safg-search,.safg-sort,.safg-filter{min-height:42px;border:1px solid #d1d5db;border-radius:8px;padding:8px 12px}.safg-search{min-width:min(100%,280px)}.safg-filter-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.safg-clear{min-height:42px;border:0;border-radius:8px;padding:8px 14px;background:var(--safg-accent);color:#fff;cursor:pointer}.safg-grid{display:grid;grid-template-columns:repeat(var(--safg-columns),minmax(0,1fr));gap:var(--safg-gap)}.safg-item{margin:0;border-radius:var(--safg-radius);overflow:hidden;background:#fff;box-shadow:0 1px 5px rgba(0,0,0,.08)}.safg-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer}.safg-open img{display:block;width:100%;height:var(--safg-gallery-thumb-height,180px);object-fit:var(--safg-gallery-thumb-fit,contain)!important;object-position:center center;background:#111;transition:transform .2s ease}.safg-open:hover img{transform:scale(1.03)}.safg-item figcaption{font-size:14px;line-height:1.35;padding:10px 12px}.safg-no-results,.safg-empty,.safg-error{padding:16px;border:1px solid #e5e7eb;border-radius:8px}.safg-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:999999;display:none;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.safg-lightbox.is-open{display:flex}.safg-lb-img{display:block;width:auto;height:auto;max-width:var(--safg-lightbox-width,96vw);max-height:var(--safg-lightbox-height,92vh);object-fit:contain;margin:auto}.safg-lb-caption{position:absolute;left:20px;right:20px;bottom:12px;color:#fff;text-align:center;font-size:15px;line-height:1.35}.safg-lb-title{display:block;font-weight:700;font-size:18px}.safg-lb-text{display:block;opacity:.85;margin-top:3px}.safg-lb-close,.safg-lb-prev,.safg-lb-next{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;border-radius:999px}.safg-lb-close{top:18px;right:18px;font-size:34px;width:48px;height:48px}.safg-lb-prev,.safg-lb-next{top:50%;transform:translateY(-50%);font-size:52px;width:58px;height:58px}.safg-lb-prev{left:18px}.safg-lb-next{right:18px}

.safg-albums-wrap{--safg-album-text:#fff;--safg-album-muted:rgba(255,255,255,.52);--safg-album-bg:#000;padding:28px 0;background:var(--safg-album-bg);color:var(--safg-album-text)}.safg-albums-light{--safg-album-bg:#fff;--safg-album-text:#111;--safg-album-muted:rgba(17,17,17,.58)}.safg-album-controls{display:flex;flex-wrap:wrap;gap:26px;align-items:center;justify-content:center;margin:0 0 46px}.safg-album-filter{border:0;background:transparent;color:var(--safg-album-muted);text-transform:uppercase;letter-spacing:.06em;font-size:14px;font-weight:700;cursor:pointer;padding:0}.safg-album-filter:hover,.safg-album-filter.is-active{color:var(--safg-album-text)}.safg-album-search,.safg-album-sort{min-height:38px;border:1px solid rgba(255,255,255,.25);background:transparent;color:var(--safg-album-text);border-radius:0;padding:8px 10px}.safg-albums-light .safg-album-search,.safg-albums-light .safg-album-sort{border-color:rgba(0,0,0,.22)}.safg-album-grid{display:grid;grid-template-columns:repeat(var(--safg-album-columns),minmax(0,1fr));gap:var(--safg-album-gap);align-items:start}.safg-album-card{break-inside:avoid;margin:0 0 8px}.safg-album-open{display:flex;width:100%;height:var(--safg-album-thumb-height,260px);min-height:var(--safg-album-thumb-height,260px);padding:0;border:0;background:#111;cursor:pointer;text-align:left;overflow:hidden;align-items:center;justify-content:center}.safg-album-open img{display:block;width:100%;height:var(--safg-album-thumb-height,260px);object-fit:var(--safg-album-thumb-fit,contain)!important;object-position:center center;background:#111;transition:opacity .2s ease,transform .25s ease}.safg-album-open:hover img{opacity:.88;transform:scale(1.015)}.safg-album-placeholder{display:flex;align-items:center;justify-content:center;height:var(--safg-album-thumb-height,260px);border:1px solid rgba(255,255,255,.18);color:var(--safg-album-muted)}.safg-album-terms{margin-top:14px;color:var(--safg-album-muted);font-size:13px;line-height:1.2;font-weight:800;text-transform:uppercase}.safg-album-title{margin:4px 0 0!important;color:var(--safg-album-text);font-size:28px!important;line-height:1.05!important;font-weight:900!important;text-transform:uppercase}.safg-album-count{margin-top:7px;color:var(--safg-album-muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.safg-album-detail{padding-top:10px}.safg-back-to-albums{border:1px solid rgba(255,255,255,.25);background:transparent;color:var(--safg-album-text);padding:10px 14px;margin:0 0 22px;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.safg-albums-light .safg-back-to-albums{border-color:rgba(0,0,0,.22)}.safg-album-panel>h2{color:var(--safg-album-text);font-size:34px;line-height:1.1;text-transform:uppercase;margin:0 0 24px}.safg-albums-dark .safg-album-panel .safg-wrap{--safg-bg:#000!important;--safg-text:#fff!important}.safg-albums-dark .safg-album-panel .safg-item{background:#111;box-shadow:none}.safg-albums-dark .safg-album-panel .safg-item figcaption{color:#fff}

@media(max-width:900px){.safg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.safg-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.safg-album-title{font-size:24px!important}}@media(max-width:560px){.safg-grid,.safg-album-grid{grid-template-columns:1fr}.safg-controls,.safg-filter-row,.safg-album-controls{display:block}.safg-search,.safg-sort,.safg-filter,.safg-clear,.safg-album-search,.safg-album-sort{width:100%;margin-bottom:10px}.safg-album-filter{display:block;margin:0 auto 16px}.safg-album-title{font-size:22px!important}}

.safg-album-filter[hidden]{display:none!important}
.safg-item figcaption{display:none!important}
.safg-album-controls .safg-album-filter[hidden],
.safg-album-controls .safg-album-filter[aria-hidden="true"]{display:none!important}
.safg-item > figcaption{display:none!important}

/* Stacked filter tree navigation */
.safg-album-filter-tree{display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;width:100%}
.safg-album-filter-row{display:flex;flex-wrap:wrap;gap:26px;align-items:center;justify-content:center;width:100%}
.safg-album-filter-row[hidden]{display:none!important}
.safg-album-filter.is-current{color:var(--safg-album-text)}

/* v1.1.4 navigation button controls */
.safg-album-controls{justify-content:flex-start!important;align-items:flex-start!important;gap:14px!important;margin-left:0!important;text-align:left!important}
.safg-album-filter-tree{display:flex;flex-direction:column;align-items:flex-start;gap:var(--safg-nav-row-gap,12px);width:100%;margin:0 0 24px 0;text-align:left}
.safg-album-filter-row{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;width:100%;margin:0;text-align:left}
.safg-album-filter{display:inline-flex!important;align-items:center;justify-content:center;min-height:38px;padding:9px 18px!important;border:1px solid var(--safg-nav-border,#555)!important;border-radius:6px!important;background:var(--safg-nav-bg,#000)!important;color:var(--safg-nav-text,#fff)!important;font-size:var(--safg-nav-font-size,16px)!important;line-height:1.15!important;text-transform:uppercase;letter-spacing:.04em;font-weight:800;cursor:pointer;text-align:center;transition:opacity .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}
.safg-album-filter[hidden],.safg-album-filter[aria-hidden="true"]{display:none!important}
.safg-album-filter:hover,.safg-album-filter.is-active,.safg-album-filter.is-current{opacity:1;border-color:var(--safg-accent,#fff)!important}
.safg-album-filter:not(.is-active):not(.is-current){opacity:.7}

/* v1.1.4 opened album thumbnail sizing */
.safg-open{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:var(--safg-gallery-thumb-height,180px)!important;min-height:var(--safg-gallery-thumb-height,180px)!important;overflow:hidden!important;background:#111!important;line-height:0!important}
.safg-open img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:var(--safg-gallery-thumb-fit,contain)!important;object-position:center center!important;background:#111!important}
.safg-item{overflow:hidden!important;background:#111!important}
.safg-item figcaption{display:none!important}
@media(max-width:560px){.safg-album-controls{display:flex!important}.safg-album-filter{margin:0!important;width:auto!important}.safg-album-filter-row{gap:8px}.safg-album-filter-tree{gap:var(--safg-nav-row-gap,12px)}}


/* Lightbox and opened-album fixes */
html.safg-lightbox-open, body.safg-lightbox-open{overflow:hidden!important;}
.safg-album-detail[hidden], .safg-album-panel[hidden]{display:none!important;}
.safg-album-detail{display:block;overflow:visible!important;max-height:none!important;height:auto!important;}
.safg-album-detail-inner,.safg-album-panel{overflow:visible!important;max-height:none!important;height:auto!important;}
.safg-gallery-fit-contain .safg-open img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;}
.safg-gallery-fit-cover .safg-open img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;}
.safg-lightbox.is-open{align-items:center!important;justify-content:center!important;}
.safg-lightbox .safg-lb-img{position:relative!important;top:auto!important;left:auto!important;transform:none!important;}


/* v1.1.6 lightbox sizing and page scroll fixes */
html.safg-lightbox-open, body.safg-lightbox-open{overflow:auto!important;}
html,body{max-height:none!important;}
.safg-albums-wrap,.safg-wrap,.safg-album-detail,.safg-album-detail-inner,.safg-album-panel,.safg-grid,.safg-album-grid{overflow:visible!important;max-height:none!important;height:auto!important;}
.safg-lightbox{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;display:none;align-items:center!important;justify-content:center!important;padding:10px!important;box-sizing:border-box!important;overflow:hidden!important;}
.safg-lightbox.is-open{display:flex!important;}
.safg-lb-img{display:block!important;width:var(--safg-lightbox-width,96vw)!important;height:var(--safg-lightbox-height,92vh)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;object-fit:contain!important;object-position:center center!important;margin:0 auto!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;}
.safg-lb-caption{pointer-events:none!important;}
.safg-open{height:var(--safg-gallery-thumb-height,180px)!important;min-height:var(--safg-gallery-thumb-height,180px)!important;}
.safg-gallery-fit-contain .safg-open img{width:100%!important;height:100%!important;object-fit:contain!important;}
.safg-gallery-fit-cover .safg-open img{width:100%!important;height:100%!important;object-fit:cover!important;}
body:not(.safg-lightbox-open) .safg-lightbox:not(.is-open){display:none!important;}


/* v1.1.7 centering, scroll, and album thumbnail spacing fixes */
html.safg-lightbox-open,body.safg-lightbox-open{overflow:auto!important;position:static!important;height:auto!important;}
.safg-lightbox{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;width:100dvw!important;height:100vh!important;height:100dvh!important;display:none!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;box-sizing:border-box!important;overflow:hidden!important;transform:none!important;z-index:2147483647!important;}
.safg-lightbox.is-open{display:flex!important;}
.safg-lightbox .safg-lb-img{display:block!important;width:auto!important;height:auto!important;max-width:min(var(--safg-lightbox-width,96vw),100vw)!important;max-width:min(var(--safg-lightbox-width,96vw),100dvw)!important;max-height:min(var(--safg-lightbox-height,92vh),100vh)!important;max-height:min(var(--safg-lightbox-height,92vh),100dvh)!important;object-fit:contain!important;object-position:center center!important;margin:auto!important;position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;transform:none!important;align-self:center!important;justify-self:center!important;}
.safg-lb-close,.safg-lb-prev,.safg-lb-next{z-index:2147483647!important;}
.safg-lb-caption{z-index:2147483647!important;pointer-events:none!important;}
.safg-album-open{height:auto!important;min-height:0!important;line-height:0!important;align-items:center!important;justify-content:center!important;}
.safg-album-open img{height:auto!important;max-height:var(--safg-album-thumb-height,260px)!important;width:100%!important;object-fit:contain!important;object-position:center center!important;}
.safg-album-card{overflow:visible!important;}
.safg-album-detail,.safg-album-panel,.safg-grid{overflow:visible!important;max-height:none!important;height:auto;}


/* v1.1.8 page scrolling and full-page gallery fixes */
html, body{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  max-height:none!important;
  height:auto!important;
  min-height:100%!important;
  position:static!important;
}
body.safg-lightbox-open, html.safg-lightbox-open{
  overflow-y:auto!important;
  height:auto!important;
  position:static!important;
}
.safg-scroll-fixed,
.safg-scroll-fixed > .elementor-container,
.safg-scroll-fixed > .elementor-widget-container{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
}
.safg-albums-wrap,
.safg-album-detail,
.safg-album-panel,
.safg-album-panel .safg-wrap,
.safg-album-panel .safg-grid{
  display:block;
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  contain:none!important;
}
.safg-album-grid,
.safg-grid{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
}
.safg-albums-wrap{
  padding-bottom:80px!important;
  margin-bottom:80px!important;
}
.safg-album-detail[hidden],
.safg-album-panel[hidden],
.safg-album-grid[hidden],
.safg-album-controls[hidden]{
  display:none!important;
}
.safg-album-detail:not([hidden]),
.safg-album-panel:not([hidden]){
  display:block!important;
}
.safg-lightbox{
  overflow:hidden!important;
  overscroll-behavior:contain!important;
}


/* v1.1.9 final scroll and opened-gallery thumbnail fixes */
.safg-albums-wrap .safg-album-panel .safg-wrap .safg-grid,
.safg-albums-wrap .safg-wrap .safg-grid,
.safg-wrap .safg-grid{
  display:grid!important;
  grid-template-columns:repeat(var(--safg-columns,4),minmax(0,1fr))!important;
  gap:var(--safg-gap,16px)!important;
  align-items:start!important;
  overflow:visible!important;
  height:auto!important;
  max-height:none!important;
}
.safg-albums-wrap .safg-album-grid{
  display:grid!important;
  grid-template-columns:repeat(var(--safg-album-columns,3),minmax(0,1fr))!important;
  gap:var(--safg-album-gap,28px)!important;
  align-items:start!important;
}
.safg-wrap .safg-item{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.safg-wrap .safg-open{
  display:flex!important;
  width:100%!important;
  height:var(--safg-gallery-thumb-height,180px)!important;
  min-height:var(--safg-gallery-thumb-height,180px)!important;
  max-height:var(--safg-gallery-thumb-height,180px)!important;
  overflow:hidden!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:0!important;
  padding:0!important;
}
.safg-gallery-fit-contain .safg-open img,
.safg-wrap.safg-gallery-fit-contain .safg-open img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.safg-gallery-fit-cover .safg-open img,
.safg-wrap.safg-gallery-fit-cover .safg-open img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.safg-albums-wrap,
.safg-album-detail,
.safg-album-panel,
.safg-album-panel .safg-wrap{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
}
.safg-albums-wrap{
  padding-bottom:160px!important;
  margin-bottom:160px!important;
}
.safg-lightbox:not(.is-open){display:none!important;}
@media(max-width:900px){
  .safg-albums-wrap .safg-album-panel .safg-wrap .safg-grid,
  .safg-albums-wrap .safg-wrap .safg-grid,
  .safg-wrap .safg-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .safg-albums-wrap .safg-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  .safg-albums-wrap .safg-album-panel .safg-wrap .safg-grid,
  .safg-albums-wrap .safg-wrap .safg-grid,
  .safg-wrap .safg-grid,
  .safg-albums-wrap .safg-album-grid{grid-template-columns:1fr!important;}
}

/* v1.2.0 navigation, layout, and shadow options */
.safg-has-thumb-shadow .safg-item,
.safg-has-thumb-shadow .safg-album-open{
  box-shadow:0 10px 28px rgba(0,0,0,.35)!important;
}
.safg-lightbox-has-shadow .safg-lb-img{
  box-shadow:0 18px 60px rgba(0,0,0,.65)!important;
}
.safg-lightbox-no-shadow .safg-lb-img{
  box-shadow:none!important;
}

/* Masonry thumbnail layout for opened albums */
.safg-wrap.safg-layout-masonry .safg-grid{
  display:block!important;
  column-count:var(--safg-columns,4)!important;
  column-gap:var(--safg-gap,16px)!important;
}
.safg-wrap.safg-layout-masonry .safg-item{
  display:block!important;
  break-inside:avoid!important;
  page-break-inside:avoid!important;
  margin:0 0 var(--safg-gap,16px)!important;
}
.safg-wrap.safg-layout-masonry .safg-open{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.safg-wrap.safg-layout-masonry .safg-open img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}

/* Justified thumbnail layout for opened albums */
.safg-wrap.safg-layout-justified .safg-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:var(--safg-gap,16px)!important;
  align-items:stretch!important;
}
.safg-wrap.safg-layout-justified .safg-item{
  flex-grow:calc(var(--safg-ratio,1.5) * 100)!important;
  flex-basis:calc(var(--safg-ratio,1.5) * var(--safg-gallery-thumb-height,180px))!important;
  min-width:160px!important;
  margin:0!important;
}
.safg-wrap.safg-layout-justified .safg-open{
  height:var(--safg-gallery-thumb-height,180px)!important;
  min-height:var(--safg-gallery-thumb-height,180px)!important;
  max-height:var(--safg-gallery-thumb-height,180px)!important;
}
.safg-wrap.safg-layout-justified .safg-open img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
@media(max-width:900px){
  .safg-wrap.safg-layout-masonry .safg-grid{column-count:2!important;}
}
@media(max-width:560px){
  .safg-wrap.safg-layout-masonry .safg-grid{column-count:1!important;}
  .safg-wrap.safg-layout-justified .safg-grid{display:grid!important;grid-template-columns:1fr!important;}
  .safg-wrap.safg-layout-justified .safg-item{min-width:0!important;}
}

/* v1.2.1 filter radius and gallery view visibility fixes */
.safg-albums-wrap .safg-album-filter{
  border-radius:var(--safg-nav-radius,4px)!important;
}
.safg-albums-wrap[data-always-show-nav="1"] .safg-album-controls{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
.safg-albums-wrap[data-always-show-nav="1"] .safg-album-controls[hidden]{
  display:flex!important;
}
.safg-albums-wrap[data-show-albums-in-gallery="0"] .safg-album-detail:not([hidden]){
  margin-top:24px!important;
}
.safg-albums-wrap[data-show-albums-in-gallery="1"] .safg-album-grid:not([hidden]) + .safg-no-results + .safg-album-detail:not([hidden]){
  margin-top:36px!important;
}

/* v1.2.2 scroll bottom fix for opened gallery */
.safg-scroll-unlock{
  overflow:visible!important;
  overflow-y:visible!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  contain:none!important;
}
.safg-albums-wrap.safg-scroll-ready,
.safg-albums-wrap .safg-album-detail,
.safg-albums-wrap .safg-album-detail-inner,
.safg-albums-wrap .safg-album-panel:not([hidden]),
.safg-albums-wrap .safg-album-panel .safg-wrap,
.safg-albums-wrap .safg-album-panel .safg-grid{
  overflow:visible!important;
  overflow-y:visible!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  contain:none!important;
}
.safg-albums-wrap .safg-album-detail:not([hidden]){
  display:block!important;
  padding-bottom:240px!important;
  margin-bottom:120px!important;
}
.safg-albums-wrap .safg-album-panel:not([hidden])::after,
.safg-albums-wrap .safg-album-detail-inner::after{
  content:"";
  display:block;
  clear:both;
  height:180px;
}
.safg-wrap .safg-grid::after{
  content:"";
  display:block;
  height:1px;
  width:100%;
}


/* v1.2.3 true masonry packing fix
   Uses CSS grid + JS-calculated row spans so images are packed into the shortest available gaps. */
.safg-wrap.safg-layout-masonry .safg-grid{
  display:grid!important;
  grid-template-columns:repeat(var(--safg-columns,4),minmax(0,1fr))!important;
  grid-auto-flow:dense!important;
  grid-auto-rows:8px!important;
  gap:var(--safg-gap,16px)!important;
  column-count:initial!important;
  column-gap:initial!important;
  align-items:start!important;
}
.safg-wrap.safg-layout-masonry .safg-item{
  display:block!important;
  margin:0!important;
  width:auto!important;
  min-width:0!important;
  break-inside:auto!important;
  page-break-inside:auto!important;
  grid-row-end:span var(--safg-masonry-span,30);
}
.safg-wrap.safg-layout-masonry .safg-open{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  line-height:0!important;
  padding:0!important;
}
.safg-wrap.safg-layout-masonry .safg-open img,
.safg-wrap.safg-layout-masonry.safg-gallery-fit-contain .safg-open img,
.safg-wrap.safg-layout-masonry.safg-gallery-fit-cover .safg-open img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.safg-wrap.safg-layout-masonry .safg-item[hidden]{display:none!important;}
@media(max-width:900px){
  .safg-wrap.safg-layout-masonry .safg-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-count:initial!important;}
}
@media(max-width:560px){
  .safg-wrap.safg-layout-masonry .safg-grid{grid-template-columns:1fr!important;column-count:initial!important;}
}


/* v1.2.5 Elementor Default page layout scroll fix
   Keeps Elementor shortcode/section wrappers from clipping the album gallery height. */
.safg-elementor-scroll-fix,
.safg-scroll-unlock,
.elementor-widget-container:has(.safg-albums-wrap),
.elementor-shortcode:has(.safg-albums-wrap),
.elementor-element:has(.safg-albums-wrap),
.e-con:has(.safg-albums-wrap),
.e-con-inner:has(.safg-albums-wrap){
  overflow:visible!important;
  overflow-y:visible!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  contain:none!important;
}
body:not(.safg-lightbox-open),
html:not(.safg-lightbox-open){
  overflow-y:auto!important;
  height:auto!important;
  max-height:none!important;
}
.safg-albums-wrap{
  display:block!important;
  position:relative!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
}
.safg-albums-wrap::after,
.safg-album-detail::after,
.safg-album-panel::after,
.safg-wrap::after{
  content:"";
  display:block;
  clear:both;
  height:260px;
}

/* v1.2.6 Elementor Default/fixed-height page fallback.
   When a theme or Elementor template locks the browser page height, the gallery itself becomes scrollable. */
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  max-height:calc(100vh - var(--safg-internal-scroll-offset,120px))!important;
  max-height:calc(100dvh - var(--safg-internal-scroll-offset,120px))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  padding-bottom:180px!important;
  box-sizing:border-box!important;
  scrollbar-width:auto!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-detail,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-detail-inner,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-panel,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-wrap{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active::after{
  content:""!important;
  display:block!important;
  height:220px!important;
  flex:0 0 220px!important;
}

/* v1.2.8 scrollbar spacing, modern lightbox controls, and configurable lightbox border */
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  scrollbar-gutter:stable!important;
  padding-right:calc(var(--safg-scrollbar-left-margin,18px) + 8px)!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-grid,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-grid{
  padding-right:var(--safg-scrollbar-left-margin,18px)!important;
  box-sizing:border-box!important;
}
.safg-lightbox .safg-lb-img{
  border:var(--safg-lb-border-width,0px) solid var(--safg-lb-border-color,#fff)!important;
  border-radius:10px!important;
  box-sizing:border-box!important;
  background:#000!important;
}
.safg-lb-close,
.safg-lb-prev,
.safg-lb-next{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.28)!important;
  background:rgba(20,20,24,.58)!important;
  color:#fff!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.45)!important;
  line-height:1!important;
  font-family:Arial,Helvetica,sans-serif!important;
  transition:background .18s ease, transform .18s ease, border-color .18s ease!important;
}
.safg-lb-close:hover,
.safg-lb-prev:hover,
.safg-lb-next:hover{
  background:rgba(255,255,255,.22)!important;
  border-color:rgba(255,255,255,.55)!important;
  transform:scale(1.04)!important;
}
.safg-lb-close{
  top:22px!important;
  right:22px!important;
  width:44px!important;
  height:44px!important;
  font-size:28px!important;
  font-weight:300!important;
}
.safg-lb-prev,
.safg-lb-next{
  top:50%!important;
  width:54px!important;
  height:54px!important;
  font-size:44px!important;
  font-weight:300!important;
  padding-bottom:4px!important;
}
.safg-lb-prev{left:24px!important;transform:translateY(-50%)!important;}
.safg-lb-next{right:24px!important;transform:translateY(-50%)!important;}
.safg-lb-prev:hover{transform:translateY(-50%) scale(1.04)!important;}
.safg-lb-next:hover{transform:translateY(-50%) scale(1.04)!important;}
.safg-lb-close:hover{transform:scale(1.04)!important;}
@media (max-width:640px){
  .safg-lb-close{top:12px!important;right:12px!important;width:40px!important;height:40px!important;font-size:26px!important;}
  .safg-lb-prev,.safg-lb-next{width:42px!important;height:42px!important;font-size:34px!important;}
  .safg-lb-prev{left:10px!important;}
  .safg-lb-next{right:10px!important;}
}

/* Gallery pagination */
.safg-pagination{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  margin:28px 0 60px!important;
  color:var(--safg-text,#fff)!important;
  font-size:15px!important;
}
.safg-pagination[hidden]{display:none!important;}
.safg-page-prev,
.safg-page-next{
  appearance:none!important;
  border:1px solid var(--safg-accent,#b0005a)!important;
  background:rgba(255,255,255,.06)!important;
  color:inherit!important;
  border-radius:999px!important;
  padding:10px 18px!important;
  min-height:42px!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  cursor:pointer!important;
  transition:background .2s ease, transform .2s ease, opacity .2s ease!important;
}
.safg-page-prev:hover:not(:disabled),
.safg-page-next:hover:not(:disabled){
  background:var(--safg-accent,#b0005a)!important;
  transform:translateY(-1px)!important;
}
.safg-page-prev:disabled,
.safg-page-next:disabled{
  opacity:.35!important;
  cursor:not-allowed!important;
}
.safg-page-info{
  opacity:.82!important;
  min-width:150px!important;
  text-align:center!important;
}

/* v1.2.9 final lightbox controls, border radius, pagination, and scrollbar spacing fixes */
.safg-lightbox .safg-lb-img{
  border:var(--safg-lb-border-width,0px) solid var(--safg-lb-border-color,#ffffff)!important;
  border-radius:var(--safg-lb-border-radius,0px)!important;
  box-sizing:border-box!important;
  background:#000!important;
}
.safg-lightbox .safg-lb-close,
.safg-lightbox .safg-lb-prev,
.safg-lightbox .safg-lb-next{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:50%!important;
  background:rgba(12,12,16,.62)!important;
  color:transparent!important;
  box-shadow:0 12px 32px rgba(0,0,0,.35)!important;
  line-height:1!important;
  text-align:center!important;
  cursor:pointer!important;
  z-index:2147483647!important;
  transition:background .18s ease, border-color .18s ease, transform .18s ease!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  overflow:hidden!important;
}
.safg-lightbox .safg-lb-close:hover,
.safg-lightbox .safg-lb-prev:hover,
.safg-lightbox .safg-lb-next:hover{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.5)!important;
}
.safg-lightbox .safg-lb-close::before,
.safg-lightbox .safg-lb-prev::before,
.safg-lightbox .safg-lb-next::before{
  display:block!important;
  color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:700!important;
  line-height:1!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
}
.safg-lightbox .safg-lb-close{
  top:24px!important;
  right:24px!important;
  left:auto!important;
  transform:none!important;
}
.safg-lightbox .safg-lb-close::before{content:"×"!important;font-size:32px!important;transform:translateY(-1px)!important;}
.safg-lightbox .safg-lb-prev,
.safg-lightbox .safg-lb-next{
  top:50%!important;
}
.safg-lightbox .safg-lb-prev{
  left:24px!important;
  right:auto!important;
  transform:translateY(-50%)!important;
}
.safg-lightbox .safg-lb-next{
  right:24px!important;
  left:auto!important;
  transform:translateY(-50%)!important;
}
.safg-lightbox .safg-lb-prev:hover{transform:translateY(-50%) translateX(-2px)!important;}
.safg-lightbox .safg-lb-next:hover{transform:translateY(-50%) translateX(2px)!important;}
.safg-lightbox .safg-lb-prev::before{content:"‹"!important;font-size:44px!important;transform:translateY(-2px)!important;}
.safg-lightbox .safg-lb-next::before{content:"›"!important;font-size:44px!important;transform:translateY(-2px)!important;}
.safg-pagination{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:14px!important;
  margin:28px 0 42px!important;
  clear:both!important;
}
.safg-pagination[hidden]{display:none!important;}
.safg-page-prev,.safg-page-next{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  padding-right:max(12px,var(--safg-scrollbar-left-margin,18px))!important;
  padding-bottom:60px!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-grid,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-grid{
  padding-right:var(--safg-scrollbar-left-margin,18px)!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active::after,
.safg-wrap::after{
  height:40px!important;
}
@media(max-width:700px){
  .safg-lightbox .safg-lb-close{top:14px!important;right:14px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;}
  .safg-lightbox .safg-lb-prev,.safg-lightbox .safg-lb-next{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;}
  .safg-lightbox .safg-lb-prev{left:10px!important;}
  .safg-lightbox .safg-lb-next{right:10px!important;}
}
/* v1.2.9 hidden item fix: required for pagination, filters, and images-per-page */
.safg-grid > .safg-item[hidden],
.safg-album-grid > .safg-album-card[hidden],
.safg-album-panel[hidden],
.safg-album-detail[hidden]{
  display:none!important;
}


/* v1.3.0 remove excessive bottom scroll space after gallery/pagination */
.safg-albums-wrap .safg-album-detail:not([hidden]){
  padding-bottom:0!important;
  margin-bottom:0!important;
}
.safg-albums-wrap .safg-album-panel:not([hidden])::after,
.safg-albums-wrap .safg-album-detail-inner::after,
.safg-albums-wrap::after,
.safg-album-detail::after,
.safg-album-panel::after,
.safg-wrap::after,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active::after{
  content:""!important;
  display:block!important;
  clear:both!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  flex:0 0 0!important;
  margin:0!important;
  padding:0!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  padding-bottom:0!important;
}
.safg-pagination{
  margin:24px 0 8px!important;
}
.safg-wrap .safg-grid{
  margin-bottom:0!important;
}
.safg-album-panel .safg-wrap{
  padding-bottom:0!important;
  margin-bottom:0!important;
}


/* v1.3.1 remove phantom internal scroll space and add touch-friendly lightbox */
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active.safg-scroll-ready{
  padding-bottom:0!important;
  margin-bottom:0!important;
  overscroll-behavior:contain!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active > *:last-child,
.safg-albums-wrap .safg-album-detail:not([hidden]) > *:last-child,
.safg-albums-wrap .safg-album-panel:not([hidden]) > *:last-child,
.safg-wrap > *:last-child{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active::before,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active::after,
.safg-albums-wrap .safg-album-detail::before,
.safg-albums-wrap .safg-album-detail::after,
.safg-albums-wrap .safg-album-panel::before,
.safg-albums-wrap .safg-album-panel::after,
.safg-wrap::before,
.safg-wrap::after,
.safg-grid::after{
  content:none!important;
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
}
.safg-pagination{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.safg-lightbox{
  touch-action:pan-y pinch-zoom!important;
}
.safg-lightbox .safg-lb-img{
  -webkit-user-select:none!important;
  user-select:none!important;
}


/* v1.3.2 final bottom-space and Elementor scroll cleanup */
.safg-albums-wrap,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active,
.safg-albums-wrap .safg-album-detail,
.safg-albums-wrap .safg-album-panel,
.safg-albums-wrap .safg-wrap,
.safg-albums-wrap .safg-grid{
  margin-bottom:0!important;
}
.safg-albums-wrap .safg-album-panel:not([hidden]),
.safg-albums-wrap .safg-wrap{
  padding-bottom:0!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  padding-bottom:0!important;
  max-height:calc(100vh - var(--safg-internal-scroll-offset,0px))!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-album-detail:not([hidden]){
  padding-bottom:0!important;
}
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active .safg-pagination{
  margin-bottom:0!important;
}

/* v1.3.5 customization controls and fixes */
.safg-albums-wrap{
  width:var(--safg-page-width,100%)!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.safg-album-title{
  font-size:var(--safg-album-title-size,28px)!important;
  color:var(--safg-album-title-color,var(--safg-album-text))!important;
}
.safg-album-terms,
.safg-album-count{
  font-size:var(--safg-album-subtitle-size,13px)!important;
  color:var(--safg-album-subtitle-color,var(--safg-album-muted))!important;
}
.safg-album-filter{
  padding:var(--safg-nav-padding-y,6px) var(--safg-nav-padding-x,12px)!important;
  border-radius:var(--safg-nav-radius,4px)!important;
}
.safg-album-filter.is-active,
.safg-album-filter.is-current{
  background:var(--safg-nav-active-bg,var(--safg-accent,#b0005a))!important;
  color:var(--safg-nav-active-text,#fff)!important;
  border-color:var(--safg-nav-active-bg,var(--safg-accent,#b0005a))!important;
}
.safg-album-clear{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:var(--safg-nav-padding-y,6px) var(--safg-nav-padding-x,12px);
  border:1px solid var(--safg-nav-border,#555);
  border-radius:var(--safg-nav-radius,4px);
  background:transparent;
  color:var(--safg-nav-text,#fff);
  font-size:var(--safg-nav-font-size,16px);
  font-weight:800;
  text-transform:uppercase;
  cursor:pointer;
}
.safg-album-clear:hover{background:var(--safg-nav-active-bg,var(--safg-accent,#b0005a));color:var(--safg-nav-active-text,#fff);}
.safg-pagination button,
.safg-page-prev,
.safg-page-next{
  color:var(--safg-page-button-text,#fff)!important;
  border-radius:var(--safg-page-button-radius,6px)!important;
}
.safg-pagination button:hover:not(:disabled),
.safg-page-prev:hover:not(:disabled),
.safg-page-next:hover:not(:disabled){
  background:var(--safg-page-button-hover-bg,var(--safg-accent,#b0005a))!important;
  border-color:var(--safg-page-button-hover-bg,var(--safg-accent,#b0005a))!important;
}
.safg-lightbox .safg-lb-close.safg-has-custom-icon::before,
.safg-lightbox .safg-lb-prev.safg-has-custom-icon::before,
.safg-lightbox .safg-lb-next.safg-has-custom-icon::before{content:none!important;display:none!important;}
.safg-lightbox .safg-lb-close img,
.safg-lightbox .safg-lb-prev img,
.safg-lightbox .safg-lb-next img{display:block!important;max-width:60%!important;max-height:60%!important;width:auto!important;height:auto!important;object-fit:contain!important;pointer-events:none!important;}
.safg-download-message{
  position:absolute;
  left:50%;
  bottom:70px;
  transform:translateX(-50%);
  z-index:2147483647;
  background:rgba(0,0,0,.82);
  color:#fff;
  padding:10px 16px;
  border-radius:999px;
  font-size:14px;
  line-height:1.3;
  box-shadow:0 8px 25px rgba(0,0,0,.35);
  pointer-events:none;
}
.safg-download-message[hidden]{display:none!important;}
.safg-album-layout-masonry .safg-album-grid{column-count:var(--safg-album-columns,3);column-gap:var(--safg-album-gap,34px);display:block!important;}
.safg-album-layout-masonry .safg-album-card{display:block;break-inside:avoid;margin:0 0 var(--safg-album-gap,34px);}
.safg-album-layout-justified .safg-album-grid{display:flex!important;flex-wrap:wrap;gap:var(--safg-album-gap,34px);}
.safg-album-layout-justified .safg-album-card{flex:1 1 calc(100% / var(--safg-album-columns,3) - var(--safg-album-gap,34px));min-width:220px;}
@media(max-width:900px){.safg-album-layout-masonry .safg-album-grid{column-count:2;}}
@media(max-width:560px){.safg-album-layout-masonry .safg-album-grid{column-count:1;}.safg-album-clear{width:auto!important;margin:0!important;}}


/* v1.4.0 final filter visibility fix: keep hidden album cards hidden in grid, masonry, and justified layouts */
.safg-albums-wrap .safg-album-grid > .safg-album-card[hidden],
.safg-albums-wrap .safg-album-card[hidden],
.safg-albums-wrap.safg-album-layout-masonry .safg-album-card[hidden],
.safg-albums-wrap.safg-album-layout-justified .safg-album-card[hidden]{
  display:none!important;
}


/* v1.4.1 button padding/album columns fix */
.safg-albums-wrap .safg-album-controls .safg-album-filter,
.safg-albums-wrap .safg-album-filter-tree .safg-album-filter,
.safg-albums-wrap button.safg-album-filter{
  padding-top:var(--safg-nav-padding-y,6px)!important;
  padding-bottom:var(--safg-nav-padding-y,6px)!important;
  padding-left:var(--safg-nav-padding-x,12px)!important;
  padding-right:var(--safg-nav-padding-x,12px)!important;
  min-height:0!important;
  height:auto!important;
  line-height:1.1!important;
  box-sizing:border-box!important;
}
.safg-albums-wrap.safg-album-layout-grid .safg-album-grid{
  display:grid!important;
  grid-template-columns:repeat(var(--safg-album-columns,3), minmax(0,1fr))!important;
  gap:var(--safg-album-gap,34px)!important;
}
.safg-albums-wrap.safg-album-layout-masonry .safg-album-grid{
  display:block!important;
  column-count:var(--safg-album-columns,3)!important;
  column-gap:var(--safg-album-gap,34px)!important;
}
.safg-albums-wrap.safg-album-layout-justified .safg-album-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:var(--safg-album-gap,34px)!important;
}
.safg-albums-wrap.safg-album-layout-justified .safg-album-card{
  flex:0 1 calc((100% - (var(--safg-album-gap,34px) * (var(--safg-album-columns,3) - 1))) / var(--safg-album-columns,3))!important;
}

/* v1.4.2 remove album thumbnail letterbox background for portrait covers */
.safg-albums-wrap .safg-album-open,
.safg-albums-wrap .safg-album-open img{
  background:transparent!important;
}
.safg-albums-wrap .safg-album-open{
  box-shadow:none!important;
}
.safg-albums-wrap.safg-album-layout-masonry .safg-album-open{
  height:auto!important;
  min-height:0!important;
}
.safg-albums-wrap.safg-album-layout-masonry .safg-album-open img{
  height:auto!important;
  max-height:none!important;
  width:100%!important;
  object-fit:contain!important;
}


/* v1.4.6 controls alignment, shared button styling, and gallery loading animation */
.safg-albums-wrap .safg-album-controls{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:var(--safg-nav-row-gap,12px) 10px!important;
  width:100%!important;
}
.safg-albums-wrap .safg-album-controls .safg-album-filter{
  order:1!important;
}
.safg-albums-wrap .safg-album-controls .safg-album-clear{
  order:2!important;
  margin-left:auto!important;
}
.safg-albums-wrap .safg-album-controls .safg-album-search{
  order:3!important;
  flex:0 0 20%!important;
  width:20%!important;
  min-width:180px!important;
  max-width:320px!important;
  margin-left:auto!important;
  box-sizing:border-box!important;
}
.safg-albums-wrap .safg-album-controls .safg-album-sort{
  order:4!important;
}
.safg-albums-wrap .safg-album-clear,
.safg-albums-wrap .safg-back-to-albums,
.safg-wrap .safg-clear,
.safg-wrap .safg-pagination button,
.safg-wrap .safg-page-prev,
.safg-wrap .safg-page-next,
.safg-albums-wrap .safg-pagination button,
.safg-albums-wrap .safg-page-prev,
.safg-albums-wrap .safg-page-next{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:var(--safg-nav-font-size,14px)!important;
  color:var(--safg-nav-text,#fff)!important;
  background:var(--safg-nav-bg,transparent)!important;
  border:1px solid var(--safg-nav-border,rgba(255,255,255,.35))!important;
  border-radius:var(--safg-nav-radius,6px)!important;
  padding:var(--safg-nav-padding-y,8px) var(--safg-nav-padding-x,14px)!important;
  min-height:0!important;
  height:auto!important;
  line-height:1.1!important;
  box-sizing:border-box!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-weight:800!important;
  cursor:pointer!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,opacity .18s ease!important;
}
.safg-albums-wrap .safg-album-clear:hover,
.safg-albums-wrap .safg-back-to-albums:hover,
.safg-wrap .safg-clear:hover,
.safg-wrap .safg-pagination button:hover:not(:disabled),
.safg-wrap .safg-page-prev:hover:not(:disabled),
.safg-wrap .safg-page-next:hover:not(:disabled),
.safg-albums-wrap .safg-pagination button:hover:not(:disabled),
.safg-albums-wrap .safg-page-prev:hover:not(:disabled),
.safg-albums-wrap .safg-page-next:hover:not(:disabled){
  background:var(--safg-nav-active-bg,var(--safg-accent,#b0005a))!important;
  color:var(--safg-nav-active-text,#fff)!important;
  border-color:var(--safg-nav-active-bg,var(--safg-accent,#b0005a))!important;
  transform:translateY(-1px)!important;
}
.safg-wrap .safg-pagination button:disabled,
.safg-albums-wrap .safg-pagination button:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  transform:none!important;
}
@keyframes safgFadeUpIn{
  from{opacity:0;transform:translateY(12px) scale(.985);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
.safg-albums-wrap .safg-album-card,
.safg-wrap .safg-item{
  animation:safgFadeUpIn .38s ease both;
}
.safg-albums-wrap .safg-album-card:nth-child(2n),
.safg-wrap .safg-item:nth-child(2n){animation-delay:.035s;}
.safg-albums-wrap .safg-album-card:nth-child(3n),
.safg-wrap .safg-item:nth-child(3n){animation-delay:.07s;}
.safg-albums-wrap .safg-album-card:nth-child(4n),
.safg-wrap .safg-item:nth-child(4n){animation-delay:.105s;}
.safg-wrap.safg-is-loading .safg-grid,
.safg-albums-wrap.safg-is-loading .safg-album-grid{
  opacity:.55;
  transition:opacity .22s ease;
}
.safg-wrap .safg-open img,
.safg-albums-wrap .safg-album-open img{
  opacity:0;
  transition:opacity .32s ease,transform .25s ease;
}
.safg-wrap .safg-open img.safg-img-loaded,
.safg-albums-wrap .safg-album-open img.safg-img-loaded,
.safg-wrap .safg-open img[complete],
.safg-albums-wrap .safg-album-open img[complete]{
  opacity:1;
}
@media(max-width:900px){
  .safg-albums-wrap .safg-album-controls .safg-album-search{flex-basis:35%!important;width:35%!important;}
}
@media(max-width:560px){
  .safg-albums-wrap .safg-album-controls{gap:10px!important;}
  .safg-albums-wrap .safg-album-controls .safg-album-clear{margin-left:0!important;}
  .safg-albums-wrap .safg-album-controls .safg-album-search{flex:1 1 100%!important;width:100%!important;max-width:none!important;margin-left:0!important;}
}

/* v1.4.8 verified: right-side search/clear, right pagination, top/bottom pagination toggles */
.safg-albums-wrap .safg-album-controls{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:var(--safg-nav-row-gap,12px)!important;
  width:100%!important;
}
.safg-albums-wrap .safg-album-actions{
  margin-left:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:8px!important;
  flex:0 0 20%!important;
  width:20%!important;
  min-width:180px!important;
  max-width:320px!important;
}
.safg-albums-wrap .safg-album-actions .safg-album-search{
  width:100%!important;
  max-width:none!important;
  flex:0 0 auto!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.safg-albums-wrap .safg-album-actions .safg-album-clear{
  align-self:flex-end!important;
  width:auto!important;
  margin:0!important;
}
.safg-wrap .safg-pagination{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  text-align:right!important;
  margin:10px 0 14px!important;
}
.safg-wrap .safg-pagination-bottom{margin-top:14px!important;margin-bottom:0!important;}
.safg-wrap .safg-pagination-top{margin-top:0!important;margin-bottom:14px!important;}
.safg-wrap .safg-pagination[hidden]{display:none!important;}
.safg-wrap .safg-pagination button,
.safg-albums-wrap .safg-album-clear,
.safg-albums-wrap .safg-back-to-albums{
  font-size:var(--safg-nav-font-size,16px)!important;
  color:var(--safg-nav-text,#fff)!important;
  background:var(--safg-nav-bg,#000)!important;
  border:1px solid var(--safg-nav-border,#555)!important;
  border-radius:var(--safg-nav-radius,4px)!important;
  padding:var(--safg-nav-padding-y,6px) var(--safg-nav-padding-x,12px)!important;
  line-height:1.2!important;
  min-height:0!important;
  height:auto!important;
}
.safg-wrap .safg-pagination button:hover:not(:disabled),
.safg-albums-wrap .safg-album-clear:hover,
.safg-albums-wrap .safg-back-to-albums:hover{
  background:var(--safg-nav-active-bg,var(--safg-page-button-hover-bg,#b0005a))!important;
  color:var(--safg-nav-active-text,#fff)!important;
}
@media(max-width:760px){
  .safg-albums-wrap .safg-album-actions{flex:1 1 100%!important;width:100%!important;max-width:none!important;margin-left:0!important;}
  .safg-albums-wrap .safg-album-actions .safg-album-clear{align-self:flex-start!important;}
  .safg-wrap .safg-pagination{justify-content:flex-start!important;text-align:left!important;}
}


/* v1.5.0 hide albums on open + upward gallery animation */
.safg-albums-wrap.safg-gallery-open[data-hide-albums-on-open="1"] .safg-album-grid,
.safg-albums-wrap.safg-gallery-open[data-hide-albums-on-open="1"] .safg-no-results{
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.safg-albums-wrap.safg-gallery-open[data-hide-albums-on-open="1"] .safg-album-detail:not([hidden]){
  display:block!important;
  margin-top:0!important;
  padding-top:0!important;
  animation:safgGalleryMoveUp .32s ease both;
}
@keyframes safgGalleryMoveUp{
  from{opacity:0; transform:translateY(28px);} 
  to{opacity:1; transform:translateY(0);} 
}
.safg-albums-wrap .safg-album-grid[hidden]{display:none!important;}


/* v1.4.9 targeted fix: hide the album card section when the setting is enabled */
.safg-albums-wrap.safg-gallery-open[data-hide-albums-on-open="1"] > .safg-album-grid,
.safg-albums-wrap.safg-hide-album-cards-on-open > .safg-album-grid,
.safg-albums-wrap .safg-album-grid.safg-album-section-hidden,
.safg-albums-wrap .safg-album-grid[hidden]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.safg-albums-wrap.safg-gallery-open[data-hide-albums-on-open="1"] > .safg-album-detail:not([hidden]),
.safg-albums-wrap.safg-hide-album-cards-on-open > .safg-album-detail:not([hidden]){
  display:block!important;
  margin-top:0!important;
  padding-top:0!important;
}

/* v1.4.9 targeted fix: force the album section to use the full available width */
.safg-albums-wrap{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
.safg-albums-wrap > .safg-album-controls,
.safg-albums-wrap > .safg-album-grid,
.safg-albums-wrap > .safg-no-results,
.safg-albums-wrap > .safg-album-detail{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}


/* v1.4.9 targeted fix: remove gallery border and restore full page scrolling */
.safg-albums-wrap,
.safg-albums-wrap .safg-album-detail,
.safg-albums-wrap .safg-album-panel,
.safg-albums-wrap .safg-wrap,
.safg-albums-wrap .safg-grid,
.safg-albums-wrap .safg-item,
.safg-albums-wrap .safg-open,
.safg-albums-wrap .safg-open img{
  border:0!important;
  outline:0!important;
}
.safg-albums-wrap .safg-wrap,
.safg-albums-wrap.safg-allow-internal-scroll,
.safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  overflow-y:visible!important;
  overflow-x:visible!important;
  padding-bottom:0!important;
  margin-bottom:0!important;
}
.safg-lightbox .safg-lb-img{
  border:var(--safg-lb-border-width,0px) solid var(--safg-lb-border-color,#ffffff)!important;
  border-radius:var(--safg-lb-border-radius,0px)!important;
  outline:0!important;
}
html:not(.safg-lightbox-open),
body:not(.safg-lightbox-open){
  overflow-y:auto!important;
  height:auto!important;
}

/* Entire album/gallery container margins */
.safg-albums-wrap{
  box-sizing:border-box!important;
  margin-left:var(--safg-container-margin-left,0px)!important;
  margin-right:var(--safg-container-margin-right,0px)!important;
  width:calc(100% - var(--safg-container-margin-left,0px) - var(--safg-container-margin-right,0px))!important;
  max-width:none!important;
}
@media (max-width:767px){
  .safg-albums-wrap{
    max-width:100%!important;
  }
}


/* v1.4.11 clear reset, aligned search/clear controls, and stable lightbox controls */
.safg-albums-wrap .safg-album-actions{
  display:flex!important;
  flex:0 1 auto!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin-left:auto!important;
  width:auto!important;
  max-width:100%!important;
  order:30!important;
}
.safg-albums-wrap .safg-album-actions .safg-album-search{
  flex:0 1 260px!important;
  width:260px!important;
  min-width:160px!important;
  max-width:20vw!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.safg-albums-wrap .safg-album-actions .safg-album-clear{
  flex:0 0 auto!important;
  width:auto!important;
  margin:0!important;
  align-self:center!important;
}

/* Reset theme/Elementor button styling so the lightbox controls remain centred and consistent. */
.safg-lightbox button.safg-lb-close,
.safg-lightbox button.safg-lb-prev,
.safg-lightbox button.safg-lb-next{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:50%!important;
  background:rgba(10,10,12,.72)!important;
  color:transparent!important;
  font:inherit!important;
  line-height:1!important;
  text-indent:0!important;
  box-shadow:0 8px 28px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
  cursor:pointer!important;
  z-index:2147483647!important;
}
.safg-lightbox button.safg-lb-close{top:18px!important;right:18px!important;left:auto!important;transform:none!important;}
.safg-lightbox button.safg-lb-prev{top:50%!important;left:18px!important;right:auto!important;transform:translateY(-50%)!important;}
.safg-lightbox button.safg-lb-next{top:50%!important;right:18px!important;left:auto!important;transform:translateY(-50%)!important;}
.safg-lightbox button.safg-lb-close::before,
.safg-lightbox button.safg-lb-prev::before,
.safg-lightbox button.safg-lb-next::before{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:400!important;
  line-height:1!important;
  text-align:center!important;
  transform:none!important;
}
.safg-lightbox button.safg-lb-close::before{content:"×"!important;font-size:30px!important;}
.safg-lightbox button.safg-lb-prev::before{content:"‹"!important;font-size:42px!important;margin-top:-3px!important;}
.safg-lightbox button.safg-lb-next::before{content:"›"!important;font-size:42px!important;margin-top:-3px!important;}
.safg-lightbox button.safg-lb-close.safg-has-custom-icon::before,
.safg-lightbox button.safg-lb-prev.safg-has-custom-icon::before,
.safg-lightbox button.safg-lb-next.safg-has-custom-icon::before{content:none!important;display:none!important;}
.safg-lightbox button.safg-lb-close img,
.safg-lightbox button.safg-lb-prev img,
.safg-lightbox button.safg-lb-next img{
  display:block!important;
  width:26px!important;
  height:26px!important;
  max-width:70%!important;
  max-height:70%!important;
  margin:auto!important;
  padding:0!important;
  object-fit:contain!important;
  pointer-events:none!important;
}
.safg-lightbox button.safg-lb-close:hover{transform:scale(1.05)!important;}
.safg-lightbox button.safg-lb-prev:hover{transform:translateY(-50%) scale(1.05)!important;}
.safg-lightbox button.safg-lb-next:hover{transform:translateY(-50%) scale(1.05)!important;}

@media(max-width:700px){
  .safg-albums-wrap .safg-album-actions{
    width:100%!important;
    margin-left:0!important;
    justify-content:flex-end!important;
  }
  .safg-albums-wrap .safg-album-actions .safg-album-search{
    flex:1 1 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
  }
  .safg-lightbox button.safg-lb-close,
  .safg-lightbox button.safg-lb-prev,
  .safg-lightbox button.safg-lb-next{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;
  }
  .safg-lightbox button.safg-lb-close{top:10px!important;right:10px!important;}
  .safg-lightbox button.safg-lb-prev{left:8px!important;}
  .safg-lightbox button.safg-lb-next{right:8px!important;}
}

/* v1.4.12: optional album information overlay and responsive refinements */
.safg-album-open{position:relative}
.safg-album-overlay{position:absolute;left:16px;right:auto;bottom:16px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;max-width:calc(100% - 32px);padding:10px 12px;background:rgba(0,0,0,.58);color:#fff;text-align:left;border-radius:6px;box-sizing:border-box;pointer-events:none;backdrop-filter:blur(2px)}
.safg-meta-position-right .safg-album-overlay{left:auto;right:16px;align-items:flex-end;text-align:right}
.safg-album-overlay-terms{font-size:var(--safg-album-subtitle-size,13px);line-height:1.25;color:var(--safg-album-subtitle-color,#fff);font-weight:700;text-transform:uppercase}
.safg-album-overlay-title{margin-top:3px;font-size:var(--safg-album-title-size,28px);line-height:1.05;color:var(--safg-album-title-color,#fff);font-weight:900;text-transform:uppercase}
.safg-album-overlay-count{margin-top:5px;font-size:var(--safg-album-subtitle-size,13px);line-height:1.2;color:var(--safg-album-subtitle-color,#fff);text-transform:uppercase}
.safg-lb-img{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-drag:none}
.safg-lb-img.safg-is-dragging{cursor:grabbing}
@media (max-width:1024px){
  .safg-albums-wrap,.safg-wrap{width:100%!important;max-width:100%!important;box-sizing:border-box}
  .safg-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .safg-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .safg-album-controls,.safg-controls{width:100%;box-sizing:border-box}
  .safg-lightbox{padding:16px}
}
@media (max-width:767px){
  .safg-albums-wrap{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
  .safg-album-grid,.safg-grid{grid-template-columns:1fr!important;width:100%!important}
  .safg-album-open{min-height:0!important;height:auto!important;aspect-ratio:auto}
  .safg-album-open img{height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain!important}
  .safg-album-controls,.safg-controls{flex-direction:column;align-items:stretch!important;gap:10px!important}
  .safg-album-search,.safg-album-sort,.safg-search,.safg-sort,.safg-filter{width:100%!important;max-width:none!important;box-sizing:border-box}
  .safg-album-filter-tree,.safg-album-filter-row{width:100%}
  .safg-album-filter-row{gap:8px}
  .safg-album-overlay{left:12px;bottom:12px;max-width:calc(100% - 24px)}
  .safg-meta-position-right .safg-album-overlay{right:12px}
  .safg-album-overlay-title{font-size:min(var(--safg-album-title-size,28px),24px)}
  .safg-lightbox{padding:10px}
  .safg-lightbox .safg-lb-img{max-width:calc(100vw - 20px)!important;max-height:calc(100vh - 80px)!important}
  .safg-lb-prev,.safg-lb-next{width:44px!important;height:44px!important;font-size:38px!important}
  .safg-lb-prev{left:8px!important}.safg-lb-next{right:8px!important}
  .safg-lb-close{top:8px!important;right:8px!important;width:42px!important;height:42px!important}
}

/* v1.4.17: show-all filter toggle and lightbox slideshow controls */
.safg-show-all-filters-control{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:34px!important;
  color:var(--safg-album-text)!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.safg-show-all-filters-control input{
  width:16px!important;
  height:16px!important;
  margin:0!important;
  accent-color:var(--safg-nav-active-bg,var(--safg-accent))!important;
}
.safg-lightbox .safg-lb-slideshow-controls{
  position:absolute!important;
  left:50%!important;
  bottom:54px!important;
  transform:translateX(-50%)!important;
  z-index:2147483647!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  pointer-events:auto!important;
}
.safg-lightbox .safg-lb-play,
.safg-lightbox .safg-lb-pause{
  all:unset!important;
  box-sizing:border-box!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.58)!important;
  color:#fff!important;
  font:700 19px/1 Arial,sans-serif!important;
  cursor:pointer!important;
  box-shadow:0 4px 18px rgba(0,0,0,.35)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}
.safg-lightbox .safg-lb-play:hover,
.safg-lightbox .safg-lb-pause:hover,
.safg-lightbox .safg-lb-play:focus-visible,
.safg-lightbox .safg-lb-pause:focus-visible{
  background:rgba(255,255,255,.2)!important;
  transform:scale(1.05)!important;
  outline:2px solid #fff!important;
  outline-offset:2px!important;
}
.safg-lightbox .safg-lb-play[hidden],
.safg-lightbox .safg-lb-pause[hidden]{display:none!important;}
.safg-lightbox .safg-lb-play span{margin-left:3px!important;}
.safg-lightbox .safg-lb-pause span{letter-spacing:-2px!important;}
@media(max-width:600px){
  .safg-show-all-filters-control{width:100%!important;margin-top:4px!important;}
  .safg-lightbox .safg-lb-slideshow-controls{bottom:62px!important;}
  .safg-lightbox .safg-lb-play,.safg-lightbox .safg-lb-pause{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
}


/* v1.4.18: repaired show-all filters and place slideshow controls below the lightbox image */
.safg-lightbox .safg-lb-stage{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(var(--safg-lightbox-width,96vw),100vw)!important;
  max-width:100vw!important;
  max-height:100vh!important;
  gap:10px!important;
  margin:auto!important;
  pointer-events:none!important;
}
.safg-lightbox .safg-lb-stage .safg-lb-img,
.safg-lightbox .safg-lb-stage .safg-lb-caption,
.safg-lightbox .safg-lb-stage .safg-lb-slideshow-controls{pointer-events:auto!important;}
.safg-lightbox .safg-lb-stage .safg-lb-img{
  max-height:calc(min(var(--safg-lightbox-height,92vh),100vh) - 72px)!important;
}
.safg-lightbox .safg-lb-slideshow-controls{
  position:static!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  margin:0 auto!important;
}
.safg-album-filter-tree .safg-album-filter[aria-hidden="false"]{display:inline-flex!important;}
@media(max-width:600px){
  .safg-lightbox .safg-lb-stage{width:100%!important;gap:8px!important;}
  .safg-lightbox .safg-lb-stage .safg-lb-img{max-height:calc(100dvh - 82px)!important;}
  .safg-lightbox .safg-lb-slideshow-controls{bottom:auto!important;}
}


/* v1.4.19 mobile album sizing and touch scrolling fix */
@media (max-width: 1024px){
  .safg-albums-wrap,
  .safg-albums-wrap .safg-album-grid,
  .safg-albums-wrap .safg-album-detail,
  .safg-albums-wrap .safg-album-panel,
  .safg-albums-wrap .safg-wrap,
  .safg-albums-wrap .safg-grid{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .safg-albums-wrap.safg-album-layout-grid .safg-album-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .safg-albums-wrap.safg-album-layout-masonry .safg-album-grid{
    column-count:2!important;
  }
  .safg-albums-wrap.safg-album-layout-justified .safg-album-card{
    flex:0 0 calc(50% - (var(--safg-album-gap,20px) / 2))!important;
    max-width:calc(50% - (var(--safg-album-gap,20px) / 2))!important;
  }
}
@media (max-width: 767px){
  html:not(.safg-lightbox-open),
  body:not(.safg-lightbox-open){
    overflow-x:hidden!important;
    overflow-y:auto!important;
    height:auto!important;
    min-height:100%!important;
    touch-action:pan-y pinch-zoom!important;
    overscroll-behavior-y:auto!important;
  }
  .safg-albums-wrap,
  .safg-albums-wrap.safg-allow-internal-scroll,
  .safg-albums-wrap.safg-allow-internal-scroll.safg-internal-scroll-active,
  .safg-albums-wrap .safg-album-detail,
  .safg-albums-wrap .safg-album-panel,
  .safg-albums-wrap .safg-wrap,
  .safg-albums-wrap .safg-grid{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    overflow-y:visible!important;
    overflow-x:visible!important;
    touch-action:pan-y pinch-zoom!important;
    overscroll-behavior:auto!important;
  }
  .safg-albums-wrap{
    margin-left:0!important;
    margin-right:0!important;
    width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .safg-albums-wrap.safg-album-layout-grid .safg-album-grid,
  .safg-albums-wrap.safg-album-layout-masonry .safg-album-grid,
  .safg-albums-wrap.safg-album-layout-justified .safg-album-grid{
    display:block!important;
    column-count:1!important;
    width:100%!important;
  }
  .safg-albums-wrap .safg-album-card,
  .safg-albums-wrap.safg-album-layout-masonry .safg-album-card,
  .safg-albums-wrap.safg-album-layout-justified .safg-album-card{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 0 100%!important;
    break-inside:avoid!important;
    margin:0 0 24px!important;
  }
  .safg-albums-wrap .safg-album-open{
    display:flex!important;
    width:100%!important;
    min-height:220px!important;
    height:auto!important;
    aspect-ratio:16/10!important;
    overflow:hidden!important;
  }
  .safg-albums-wrap .safg-album-open img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:220px!important;
    max-height:none!important;
    object-fit:var(--safg-album-thumb-fit,contain)!important;
    object-position:center!important;
  }
  .safg-albums-wrap .safg-grid,
  .safg-albums-wrap .safg-layout-masonry .safg-grid,
  .safg-albums-wrap .safg-layout-justified .safg-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    column-count:1!important;
    gap:14px!important;
  }
  .safg-albums-wrap .safg-item,
  .safg-albums-wrap .safg-open{
    width:100%!important;
    max-width:100%!important;
    break-inside:avoid!important;
  }
  .safg-albums-wrap .safg-open{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:auto!important;
  }
  .safg-albums-wrap .safg-open img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
  }
  .safg-elementor-scroll-fix,
  .safg-scroll-unlock,
  .elementor-widget-container:has(.safg-albums-wrap),
  .elementor-shortcode:has(.safg-albums-wrap),
  .e-con:has(.safg-albums-wrap),
  .e-con-inner:has(.safg-albums-wrap){
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    overflow-y:visible!important;
    touch-action:pan-y pinch-zoom!important;
  }
}
