/* Masonry galleries (masonry.js): the ShootCal Website gallery block and core
   galleries, like ryansmithphotography.com/wedding-gallery/. Before the script
   runs, and without JavaScript, photos stack in one 1100px column, 6px apart.
   Square corners and no shadow, as on the live gallery. */
.sc-gallery .sc-masonry,.wp-block-gallery.sc-masonry{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;max-width:1100px;margin-inline:auto;padding:0}
.sc-masonry>*{position:relative;display:block;margin:0!important;width:auto!important;max-width:none!important}
.sc-masonry img{display:block;width:100%!important;height:auto;border-radius:0!important;box-shadow:none!important}
.sc-masonry a[data-lbwps-width]{display:block;cursor:zoom-in}
.sc-masonry.is-masonry{display:block!important;position:relative;overflow-anchor:none}
.sc-masonry.is-masonry>*{position:absolute!important;top:0;left:0;width:var(--sc-tile-w)!important;height:var(--sc-tile-h)!important;transform:translate(var(--sc-tile-x),var(--sc-tile-y))}
.sc-masonry.is-masonry>* a,.sc-masonry.is-masonry>a{height:100%}
/* A website gallery can run to hundreds of tiles. Each has its size from the layout, so tiles off screen skip rendering and their photos don't load until the visitor gets near. A full-page capture has to scroll first, or it shows them blank. */
.sc-gallery .sc-masonry.is-masonry>*{content-visibility:auto}
/* First view on a phone: the other tiles wait for the first photo (see first_photo_wait in native-gallery.php). */
.sc-gallery-wait .sc-masonry>:not(:first-child){content-visibility:hidden;contain-intrinsic-height:66vw}
.sc-gallery__caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.sc-masonry.is-masonry img{height:100%!important;object-fit:cover}
/* A blog post's runs of photos (the theme's shootcal_photo_grid), the same before the script runs. A post can hold hundreds of photos: each tile has its size from the layout, so tiles off screen skip rendering. A full-page capture has to scroll first, or it shows them blank. */
.sc-photo-grid.sc-masonry{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-width:1100px;margin-inline:auto;padding:0}
.sc-photo-grid.sc-masonry.is-masonry{display:block}
.sc-photo-grid.is-masonry>*{content-visibility:auto}

/* The Load more button and the link to the full gallery, below the photos. */
.sc-gallery__more{margin:1.5rem 0 0;text-align:center}
.sc-gallery__more button.sc-button{cursor:pointer}
.sc-gallery__more a.sc-button,.sc-gallery__more a.sc-button:hover{color:white}
.sc-gallery__more button.sc-button:disabled{opacity:.65;cursor:default;transform:none}

/* Gallery messages: shown below the photos when the rest of a gallery could not load. */
.sc-gallery [data-sc-gallery-status]:not(:empty){max-width:1100px;margin:1.5rem auto 0;text-align:center}
.sc-gallery__retry{display:block;min-height:44px;margin:.75rem auto 0;padding:10px 24px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font:inherit;cursor:pointer}
