/**
 * Gallery & artwork detail — keep fixed header blur from touching photographs.
 * --site-header-height is set by js/gallery-header-clearance.js from the live header.
 */
:root {
  --site-header-height: 5.5rem;
  --site-header-art-gap: clamp(1.5rem, 4vw, 2.5rem); /* ~24–40px below header */
  --site-header-art-clearance: calc(var(--site-header-height) + var(--site-header-art-gap));
}

/* Fixed header: blur stays on the bar; content sits below the clearance zone */
#site-header {
  isolation: isolate;
}

.gallery-page .gallery-main,
.gallery-page #shop.gallery-main {
  padding-top: var(--site-header-art-clearance);
}

/* Anchor / hash jumps land below the header */
.gallery-page .art-hero-wrap,
.gallery-page #print-hero {
  scroll-margin-top: var(--site-header-art-clearance);
}

/* Hero & detail frames — full image size preserved; spacing is outside the frame */
.gallery-page .art-hero-wrap {
  margin-top: 0;
}

.gallery-page .art-hero-frame,
.gallery-page .art-figure-frame {
  position: relative;
}

/* Bottom vignette only — do not darken the top edge of the photograph */
.gallery-page .art-hero-vignette {
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 42%,
    rgba(0, 0, 0, 0.38) 100%
  );
}

/* Portrait plates: keep top of frame aligned; clearance comes from .gallery-main */
.gallery-page .art-hero-frame img.is-portrait,
.gallery-page .art-figure-frame img.is-portrait {
  object-position: center center;
}
