body.dw-lightbox-open{overflow:hidden}.dw-album-photo{cursor:zoom-in}.dw-lightbox{position:fixed;z-index:99999;inset:0;display:none;align-items:center;justify-content:center;padding:70px 75px;background:rgba(5,12,9,.94)}.dw-lightbox.is-open{display:flex}.dw-lightbox figure{max-width:min(1200px,90vw);max-height:88vh;margin:0;text-align:center}.dw-lightbox img{display:block;max-width:100%;max-height:78vh;margin:auto;object-fit:contain;box-shadow:0 18px 55px #000}.dw-lightbox figcaption{min-height:24px;padding-top:14px;color:#fff;font-size:14px}.dw-lightbox button{position:absolute;border:0;background:#fff;color:#173c2e;cursor:pointer}.dw-lightbox-close{top:22px;right:24px;width:46px;height:46px;border-radius:50%;font-size:30px}.dw-lightbox-prev,.dw-lightbox-next{top:50%;width:48px;height:58px;transform:translateY(-50%);font-size:34px}.dw-lightbox-prev{left:18px}.dw-lightbox-next{right:18px}.dw-lightbox-count{position:absolute;bottom:22px;color:#fff;font-weight:700}@media(max-width:600px){.dw-lightbox{padding:65px 45px}.dw-lightbox-prev,.dw-lightbox-next{width:38px;height:48px}.dw-lightbox-prev{left:4px}.dw-lightbox-next{right:4px}.dw-lightbox img{max-height:72vh}}
/* The theme's global sticky-header rule must apply only to the site navigation,
   not to the title header inside an individual gallery album. */
.album-page > .wrap > header{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  box-shadow:none!important;
}
/* Consistent viewing frame for portrait, landscape and smaller source photographs. */
.dw-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;width:min(1200px,calc(100vw - 150px));height:min(82vh,820px);max-width:none;max-height:none}
.dw-lightbox img{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;object-fit:contain}
@media(max-width:600px){.dw-lightbox figure{width:calc(100vw - 90px);height:78vh}.dw-lightbox img{max-height:none}}
/* Album thumbnails retain their complete natural proportions so faces are never cropped. */
.album-page .entry-content .wp-block-gallery figure,.album-page .entry-content .wp-block-image{align-self:start;overflow:hidden;background:#eef2ed}
.album-page .entry-content .wp-block-gallery img,.album-page .entry-content .wp-block-image img,.album-page .entry-content img.dw-album-photo{display:block;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center top!important}
/* Responsive masonry collage: natural image ratios, compact gaps and no face cropping. */
.album-page .entry-content .wp-block-gallery{display:block!important;columns:3;column-gap:15px}
.album-page .entry-content .wp-block-gallery>figure{display:inline-block!important;width:100%!important;margin:0 0 15px!important;break-inside:avoid;page-break-inside:avoid}
.album-page .entry-content .wp-block-gallery>figure img{width:100%!important;height:auto!important}
@media(max-width:800px){.album-page .entry-content .wp-block-gallery{columns:2}}
@media(max-width:520px){.album-page .entry-content .wp-block-gallery{columns:1}}
/* Smart face-conscious mosaic. Wide, portrait and standard photographs receive matching tile shapes. */
.album-page .entry-content .wp-block-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:155px;gap:15px;columns:auto!important}
.album-page .entry-content .wp-block-gallery>figure{display:block!important;width:auto!important;height:100%!important;margin:0!important;overflow:hidden}
.album-page .entry-content .wp-block-gallery>figure.dw-shape-wide{grid-column:span 2;grid-row:span 1}
.album-page .entry-content .wp-block-gallery>figure.dw-shape-portrait{grid-column:span 1;grid-row:span 2}
.album-page .entry-content .wp-block-gallery>figure.dw-shape-standard{grid-column:span 1;grid-row:span 1}
.album-page .entry-content .wp-block-gallery>figure img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 22%!important}
@media(max-width:800px){.album-page .entry-content .wp-block-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:145px;columns:auto!important}}
@media(max-width:520px){.album-page .entry-content .wp-block-gallery{grid-template-columns:1fr;grid-auto-rows:220px;columns:auto!important}.album-page .entry-content .wp-block-gallery>figure.dw-shape-wide,.album-page .entry-content .wp-block-gallery>figure.dw-shape-standard{grid-column:span 1;grid-row:span 1}.album-page .entry-content .wp-block-gallery>figure.dw-shape-portrait{grid-column:span 1;grid-row:span 2}}
/* Also form a collage when the editor used separate Image blocks instead of one Gallery block. */
.album-page .entry-content .dw-generated-album-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:185px;gap:16px}
.album-page .entry-content :is(.wp-block-gallery,.dw-generated-album-grid)>figure{box-sizing:border-box;border:1px solid #eadfd5;border-radius:4px;background:#fff;box-shadow:0 3px 12px rgba(34,28,20,.09)}
.album-page .entry-content :is(.wp-block-gallery,.dw-generated-album-grid)>figure{display:grid!important;grid-template-rows:minmax(0,1fr) auto;width:auto!important;height:100%!important;margin:0!important;overflow:hidden}
.album-page .entry-content :is(.wp-block-gallery,.dw-generated-album-grid)>figure>a{display:block;height:100%;min-height:0;overflow:hidden}
.album-page .entry-content :is(.wp-block-gallery,.dw-generated-album-grid)>figure img{display:block;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 22%!important}
.album-page .entry-content :is(.wp-block-gallery,.dw-generated-album-grid)>figure figcaption{position:static!important;margin:0!important;padding:10px 12px!important;background:#fff!important;color:#2c2925!important;font-size:14px!important;font-weight:600;line-height:1.35;text-align:left;text-shadow:none!important}
.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-wide{grid-column:span 2;grid-row:span 1}
.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-portrait{grid-column:span 1;grid-row:span 2}
.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-standard{grid-column:span 1;grid-row:span 1}
@media(max-width:800px){.album-page .entry-content .dw-generated-album-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:165px}}
@media(max-width:520px){.album-page .entry-content .dw-generated-album-grid{grid-template-columns:1fr;grid-auto-rows:230px}.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-wide,.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-standard{grid-column:span 1;grid-row:span 1}.album-page .entry-content .dw-generated-album-grid>figure.dw-shape-portrait{grid-column:span 1;grid-row:span 2}}
