:root{
  --lind-bg:#f7f7f5;
  --lind-text:#111;
  --lind-muted:#666;
  --lind-rule:#e0e0dc;
  --lind-font-sans: "Helvetica Neue", Helvetica, Arial, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Liberation Sans", sans-serif;
  --lind-font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Times New Roman", Georgia, serif;
  --lind-font: var(--lind-font-sans);
}

html, body{ height:100%; }
body{
  background:var(--lind-bg);
  color:var(--lind-text);
  font-family: var(--lind-font-sans);
  font-weight: 400;
  line-height: 1.55;
}
a{ text-underline-offset: 3px; }

/* Header */
.lind-header{
  position: sticky;
  top: 0;
  z-index: 9999;
  background: rgba(247,247,245,0.92);
  backdrop-filter: blur(6px);
  border-bottom: 1px solid var(--lind-rule);
}
.lind-header-inner{
  display:flex;
  align-items:center;
  gap: 18px;
  max-width: 1320px;
  margin: 0 auto;
  padding: 14px 18px;
}
.lind-brand{
  font-size: 14px;
  letter-spacing: 0.16em;
  text-transform: none;
  font-variant-caps: normal;
  text-decoration: none;
  color: var(--lind-text);
  white-space: nowrap;
}

.lind-nav-toggle{
  display:none;
  margin-left:auto;
  border: 1px solid var(--lind-rule);
  background: transparent;
  padding: 8px 10px;
  border-radius: 10px;
  cursor:pointer;
  align-items:center;
  gap: 8px;
}
.lind-nav-toggle-text{ font-size: 12px; letter-spacing: .10em; text-transform: uppercase; }
.lind-nav-toggle-icon{
  width: 18px; height: 12px; display:inline-block;
  background:
    linear-gradient(var(--lind-text),var(--lind-text)) 0 0/100% 1px no-repeat,
    linear-gradient(var(--lind-text),var(--lind-text)) 0 50%/100% 1px no-repeat,
    linear-gradient(var(--lind-text),var(--lind-text)) 0 100%/100% 1px no-repeat;
  opacity: .75;
}

.lind-nav-wrap{ flex:1; }
.lind-nav{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap: 12px 22px;
  margin: 0;
  padding: 0;
}
.lind-nav > li{ position:relative; }
.lind-nav a{
  font-size: 13px;
  letter-spacing: 0.06em;
  text-decoration: none;
  color: var(--lind-text);
  opacity: .86;
}
.lind-nav a:hover{ opacity: 1; text-decoration: underline; }

.lind-nav .sub-menu{
  display:none;
  position:absolute;
  left:0;
  top: 100%;
  background: var(--lind-bg);
  border: 1px solid var(--lind-rule);
  padding: 14px 12px 10px;
  list-style:none;
  margin:0;
  min-width: 220px;
  z-index: 10000;
}
.lind-nav li:hover > .sub-menu, .lind-nav li:focus-within > .sub-menu{ display:block; }
.lind-nav .sub-menu li{ margin: 6px 0; }

/* Language */
.lind-lang-wrap{ white-space:nowrap; margin-left: auto; }
.lind-lang { letter-spacing: 0.10em; font-size: 12px; opacity: 0.80; text-decoration: none; }
.lind-lang.is-current-lang { opacity: 1; text-decoration: underline; }
.lind-lang-wrap .sep{ margin:0 6px; opacity:0.35; }

/* Mobile: collapsible menu */
@media (max-width: 900px){
  .lind-header-inner{ flex-wrap: wrap; align-items:flex-start; }
  .lind-nav-toggle{ display:inline-flex; }
  .lind-nav-wrap{ width:100%; }
  .lind-nav{ display:none; flex-direction: column; gap: 10px; padding-top: 10px; }
  body.lind-nav-open .lind-nav{ display:flex; }

  .lind-nav .sub-menu{
    display:none;
    position: static;
    border: none;
    padding: 6px 0 0 14px;
    min-width: auto;
  }
  body.lind-nav-open .lind-nav .sub-menu{ display:block; }
}

/* Disable HF Lite navbar/menu */
#navbar, .hf-navbar, .hf-navbar-right .menu, .hf-navbar-right .menu ul{
  display:none !important;
}

/* Content wrapper */
.lind-main{ padding-top: 0; }
.lind-content{
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 18px 84px;
}

/* Typography */
.entry-content h1, .entry-content h2, .entry-content h3{
  font-family: var(--lind-font-serif);
  letter-spacing: 0.01em;
  text-transform: none;
  font-weight: 500;
  line-height: 1.25;
}
.entry-content h1{ font-size: clamp(1.7rem, 2.8vw, 2.35rem); margin: 0 0 14px; }
.entry-content h2{ font-size: clamp(1.25rem, 1.7vw, 1.6rem); margin: 0 0 14px; }
.entry-content h3{ font-size: clamp(1.08rem, 1.2vw, 1.2rem); margin: 0 0 12px; }

/* HERO full screen */
.entry-content > .wp-block-group.lind-hero{
  padding: 0 !important;
  margin: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}
.entry-content > .wp-block-group.lind-hero.is-layout-constrained{
  max-width: none !important;
}
.entry-content > .wp-block-group.lind-hero figure{
  margin: 0 !important;
  height: 100vh !important;
}
.entry-content > .wp-block-group.lind-hero img{
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  display:block;
}

/* Caption under hero */
.lind-hero-caption{
  max-width: 1320px;
  margin: 10px auto 0 !important;
  padding: 0 18px !important;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lind-muted);
}

/* Scroll sections */
.entry-content > .wp-block-group.lind-scroll{
  padding: clamp(60px, 10vh, 140px) 0;
  border-top: 1px solid var(--lind-rule);
}
.lind-scroll .wp-block-columns{ gap: clamp(26px, 4vw, 60px); }
.lind-detail{ width: min(360px, 70vw); margin: 18px 0 0 auto; }
.lind-whisper{ font-size: 13px; color: var(--lind-muted); letter-spacing: 0.02em; margin-top: 10px; }
.wp-block-spacer{ height: clamp(24px, 5vw, 72px) !important; }


/* --- Spacing for text-heavy pages (About / Exhibitions / Contact) --- */
body:not(.home) .entry-content{
  padding-top: 48px;
}
body:not(.home) .entry-content > :first-child{
  margin-top: 0 !important;
}

/* Slightly calmer reading width without affecting image blocks */
body:not(.home) .entry-content p,
body:not(.home) .entry-content ul,
body:not(.home) .entry-content ol{
  max-width: 920px;
}

/* --- Sticky header: more "attached", semi-transparent while scrolling --- */
.lind-header{
  transition: background 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
body.lind-scrolled .lind-header{
  background: rgba(247,247,245,0.78);
  box-shadow: 0 10px 26px rgba(0,0,0,0.06);
  border-bottom-color: rgba(224,224,220,0.85);
}


/* Back link above single artwork */
.lind-back{
  margin: 18px 0 18px;
}
.lind-back-link{
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--lind-text);
  opacity: 0.72;
}
.lind-back-link:hover{
  opacity: 1;
  text-decoration: underline;
}

/* Single work pages: preserve original image proportions */
.lind-work-detail .entry-content .wp-block-image{
  max-width: 100%;
}
.lind-work-detail .entry-content .wp-block-image img{
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  aspect-ratio: auto !important;
}

/* Info block (single work pages only) */
.lind-work-info{
  margin: 28px 0 0;
  padding-top: 16px;
  border-top: 1px solid var(--lind-rule);
  max-width: 920px;
}
.lind-work-info-title{
  margin: 0 0 10px;
  font-size: 0.98rem;
  letter-spacing: 0.02em;
}
.lind-work-info p{
  margin: 0 0 12px;
  color: var(--lind-text);
}


/* ===== v0.3.6 fixes ===== */

/* Sticky footer even on short pages */
body{
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
}
.lind-main{ flex: 1 0 auto !important; }
.lind-footer{ margin-top: auto !important; }
.lind-footer-inner{
  max-width: 1320px;
  margin: 0 auto;
  padding: 12px 18px 20px;
  text-align: center;
}
.lind-footer-meta{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 12px;
  letter-spacing: 0.08em;
  color: var(--lind-muted);
}
.lind-footer-meta a{
  color: inherit;
  text-decoration: none;
}
.lind-footer-meta a:hover{
  text-decoration: underline;
}
.lind-footer-sep{
  opacity: 0.45;
}

/* HERO should not be covered by sticky header and should not crop on large screens */
:root{ --lind-header-h: 0px; }

.entry-content > .wp-block-group.lind-hero{
  height: calc(100vh - var(--lind-header-h, 0px)) !important;
  display: flex !important;
  flex-direction: column !important;
}

.entry-content > .wp-block-group.lind-hero figure{
  flex: 1 1 auto !important;
  height: auto !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--lind-bg);
}

.entry-content > .wp-block-group.lind-hero img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block;
}

/* Caption: at the bottom of the hero block, not overlaying the image */
.entry-content > .wp-block-group.lind-hero .lind-hero-caption{
  position: static !important;
  max-width: 1320px;
  width: 100%;
  margin: 10px auto 0 !important;
  padding: 0 18px 18px !important;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lind-muted);
}


/* ===== v0.3.7.1 Home hero fixes =====
1) HERO nie nachodzi na Scroll 1 -> overflow hidden + poprawny flex
2) Mobile: mniej pustych pasów -> cover + sensowne pozycjonowanie
3) Ultralarge desktop (>=1700): bez brzydkiego ucięcia -> contain
*/

.entry-content > .wp-block-group.lind-hero{
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-height: calc(100vh - var(--lind-header-h, 0px)) !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  z-index: 0 !important;
}

.entry-content > .wp-block-group.lind-hero figure{
  margin: 0 !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;      /* critical in flex layouts */
  overflow: hidden !important;   /* prevents hero image bleeding under Scroll 1 */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--lind-bg);
}

.entry-content > .wp-block-group.lind-hero img{
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;               /* looks best around 1280 */
  object-position: center center !important;
  display: block !important;
}

/* Ultralarge desktop: avoid top/bottom crop */
@media (min-width: 1700px){
  .entry-content > .wp-block-group.lind-hero img{
    object-fit: contain !important;
    object-position: center center !important;
  }
}

/* Mobile/tablet: fill frame (less empty bands) */
@media (max-width: 900px){
  .entry-content > .wp-block-group.lind-hero figure{
    align-items: stretch !important;
    justify-content: flex-start !important;
  }
  .entry-content > .wp-block-group.lind-hero img{
    object-fit: cover !important;
    object-position: center 35% !important;
  }
}

/* Caption: small whisper below image, never overlay */
.entry-content > .wp-block-group.lind-hero .lind-hero-caption{
  position: static !important;
  margin: 10px auto 0 !important;
  padding: 0 18px 18px !important;
  max-width: 1320px;
  width: 100%;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lind-muted);
}



/* ===== v0.3.8 Home HERO full-bleed + no gaps =====
Fixes:
- HERO centered (no empty left half)
- HERO exactly viewport height minus header (no big top/bottom gaps)
- caption inside HERO area but not on image (below image, within same screen)
- no overlap with Scroll 1
*/

/* Force full-bleed even if theme constrains alignfull groups */
.wp-block-group.alignfull.lind-hero{
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* HERO takes one screen (minus header) */
.entry-content > .wp-block-group.lind-hero{
  height: calc(100vh - var(--lind-header-h, 0px)) !important;
  min-height: calc(100vh - var(--lind-header-h, 0px)) !important;
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  overflow: hidden !important; /* absolute safety: no bleed into next section */
}

/* image area uses remaining height, caption sits below inside the same hero */
.entry-content > .wp-block-group.lind-hero figure{
  flex: 1 1 auto !important;
  min-height: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: var(--lind-bg);
}

.entry-content > .wp-block-group.lind-hero img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important; /* preserve the whole artwork */
  object-position: center center !important;
  display: block !important;
}

/* On mobile we fill the frame a bit more to avoid big bands */
@media (max-width: 900px){
  .entry-content > .wp-block-group.lind-hero{
    height: calc(100svh - var(--lind-header-h, 0px)) !important;
    min-height: calc(100svh - var(--lind-header-h, 0px)) !important;
  }
  .entry-content > .wp-block-group.lind-hero img{
    object-fit: cover !important;
    object-position: center 35% !important;
  }
}

/* Caption stays inside hero but does not overlay the image */
.entry-content > .wp-block-group.lind-hero .lind-hero-caption{
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 10px 18px 16px !important;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lind-muted);
  max-width: 1320px;
  width: 100%;
  align-self: center;
}

/* Remove any accidental gap before Scroll 1 */
.entry-content > .wp-block-group.lind-hero + .wp-block-group.lind-scroll-1{
  margin-top: 0 !important;
  padding-top: 0 !important;
}



/* ===== v0.4.0 HERO: no crop + no blank bands (contain + blurred background) =====
Goal:
- show the entire artwork on every width (no cut sides)
- still feel full-screen (avoid huge empty top/bottom bands) via blurred backdrop
*/

/* Full-bleed alignfull centered properly */
.entry-content .wp-block-group.alignfull.lind-hero{
  position: relative !important;
  left: 50% !important;
  right: auto !important;
  transform: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 1-screen hero: image + caption row */
.entry-content > .wp-block-group.lind-hero{
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-rows: 1fr auto !important;
  height: calc(100svh - var(--lind-header-h, 72px)) !important;
  min-height: calc(100svh - var(--lind-header-h, 72px)) !important;
  overflow: hidden !important;
  background: var(--lind-bg);
}

/* figure fills the image row */
.entry-content > .wp-block-group.lind-hero figure.wp-block-image{
  grid-row: 1 !important;
  position: relative !important;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  background: var(--lind-bg);
}

/* blurred backdrop (set via JS variable --lind-hero-bg) */
.entry-content > .wp-block-group.lind-hero figure.wp-block-image.lind-hero-fig--hasbg::before{
  content: "" !important;
  position: absolute !important;
  inset: -32px !important;
  background-image: var(--lind-hero-bg) !important;
  background-size: cover !important;
  background-position: center center !important;
  filter: blur(28px) !important;
  transform: scale(1.08) !important;
  opacity: 0.45 !important;
  z-index: 0 !important;
}

/* actual image is contained: always full artwork visible */
.entry-content > .wp-block-group.lind-hero figure.wp-block-image img{
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
}

/* caption below image, not overlaying it */
.entry-content > .wp-block-group.lind-hero .lind-hero-caption{
  grid-row: 2 !important;
  margin: 0 !important;
  padding: 10px 18px 16px !important;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--lind-muted);
  max-width: 1320px;
  width: 100%;
  justify-self: center;
}

/* clean join into Scroll 1 */
.entry-content > .wp-block-group.lind-hero + .wp-block-group.lind-scroll-1{
  margin-top: 0 !important;
  padding-top: clamp(18px, 4vh, 56px) !important;
}


/* ===== v0.4.1 HERO: mobile height via Customizer =====
   Customizer sets: :root { --lind-hero-mobile-h: 78svh; }
   This affects ONLY small screens. Desktop stays full-screen.
*/

/* Desktop / default */
.entry-content > .wp-block-group.lind-hero{
  height: calc(100vh - var(--lind-header-h, 72px)) !important;
  min-height: calc(100vh - var(--lind-header-h, 72px)) !important;
}

/* Mobile: reduce hero height while keeping full image visible (contain) */
@media (max-width: 900px){
  .entry-content > .wp-block-group.lind-hero{
    height: calc(var(--lind-hero-mobile-h, 78svh) - var(--lind-header-h, 72px)) !important;
    min-height: calc(var(--lind-hero-mobile-h, 78svh) - var(--lind-header-h, 72px)) !important;
  }
}

/* ===== v0.4.3 HERO: caption shift via Customizer (FIX) =====
   Customizer sets: :root { --lind-hero-caption-shift: 0px; }
   We apply it mainly < 1350px, where "contain" creates side breathing space.
*/
@media (max-width: 1349px){
  .entry-content > .wp-block-group.lind-hero .lind-hero-caption{
    /*
      NOTE: the caption is forced to position: static !important elsewhere.
      Using transform keeps the shift effective regardless of positioning.
    */
    transform: translateX(var(--lind-hero-caption-shift, 0px)) !important;
    /* keep it readable on extreme values */
    max-width: calc(100% - 24px);
  }
}

@media (min-width: 1350px){
  .entry-content > .wp-block-group.lind-hero .lind-hero-caption{
    transform: none !important;
  }
}

/* Optional gallery lightbox */
.lind-lightbox-action{
  margin: 6px 0 0 !important;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.lind-lightbox-action a{
  text-decoration: none;
  opacity: .72;
}
.lind-lightbox-action a:hover{
  opacity: 1;
  text-decoration: underline;
}

.lind-lightbox{
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: none;
}
.lind-lightbox.is-open{
  display: block;
}
.lind-lightbox__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.78);
}
.lind-lightbox__dialog{
  position: absolute;
  inset: 3vh 3vw;
  display: grid;
  grid-template-rows: 1fr auto;
  align-items: center;
  justify-items: center;
}
.lind-lightbox__img{
  max-width: 94vw;
  max-height: 86vh;
  width: auto;
  height: auto;
  box-shadow: 0 20px 55px rgba(0,0,0,.45);
}
.lind-lightbox__caption{
  color: #fff;
  font-size: 12px;
  letter-spacing: .06em;
  margin: 12px 0 0;
  text-align: center;
}
.lind-lightbox__close{
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  background: transparent;
  color: #fff;
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
  padding: 0 8px;
}
.lind-lightbox__nav{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: rgba(0,0,0,.35);
  color: #fff;
  width: 44px;
  height: 56px;
  font-size: 34px;
  line-height: 1;
  cursor: pointer;
}
.lind-lightbox__nav--prev{ left: 0; }
.lind-lightbox__nav--next{ right: 0; }

body.lind-lightbox-open{
  overflow: hidden;
}

@media (max-width: 900px){
  .lind-lightbox__dialog{
    inset: 2vh 2vw;
  }
  .lind-lightbox__img{
    max-width: 96vw;
    max-height: 78vh;
  }
}

/* ===== v0.4.9 brief adjustments: Home 1-6, Works grid/meta, Contact layout ===== */
.entry-content > .wp-block-group.alignfull.lind-home-opening{
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 0 !important;
}
.lind-home-opening-grid{
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  align-items: stretch !important;
  gap: 0 !important;
  margin: 0 !important;
}
.lind-home-opening-grid .wp-block-column{
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.lind-home-opening .wp-block-image{
  margin: 0 !important;
  height: var(--lind-opening-h, 48vh) !important;
  overflow: hidden !important;
  background: var(--lind-bg);
}
.lind-home-opening .wp-block-image img{
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.lind-home-opening-caption{
  margin: 8px 0 0 !important;
  text-align: center;
  letter-spacing: .12em;
  font-size: 12px;
}

/* Opening section: two images always visible, with per-image crop priorities */
@media (max-width: 780px){
  .lind-home-opening{
    --lind-opening-h: clamp(180px, 34svh, 260px);
  }
  .lind-home-opening-grid{
    grid-template-columns: 1fr 1fr !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 46% 54% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 54% 18% !important;
  }
  .lind-home-opening-caption{
    margin: 10px 0 0 !important;
    padding: 0 12px !important;
  }
}

@media (max-width: 480px){
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img[src*="IMG_0438-scaled.jpg"],
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img[src*="transparent-autograph.png"]{
    object-position: 38% 54% !important;
  }
}

@media (min-width: 781px) and (max-width: 900px){
  .lind-home-opening{
    --lind-opening-h: clamp(320px, 46vh, 430px);
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 50% 52% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 52% 16% !important;
  }
}

@media (min-width: 901px) and (max-width: 949px){
  .lind-home-opening{
    --lind-opening-h: clamp(350px, 48vh, 470px);
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 50% 52% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 52% 14% !important;
  }
}

@media (min-width: 950px) and (max-width: 1279px){
  .lind-home-opening{
    --lind-opening-h: clamp(400px, 52vh, 600px);
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 50% 52% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 52% 11% !important;
  }
}

@media (min-width: 1920px){
  .lind-home-opening{
    --lind-opening-h: clamp(500px, 56vh, 760px);
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 50% 52% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 52% 10% !important;
  }
}

@media (min-width: 1280px) and (max-width: 1919px){
  .lind-home-opening{
    --lind-opening-h: clamp(460px, 54vh, 700px);
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(1) .wp-block-image img{
    object-position: 50% 52% !important;
  }
  .lind-home-opening-grid > .wp-block-column:nth-child(2) .wp-block-image img{
    object-position: 52% 10% !important;
  }
}

.lind-home-scene{
  padding: clamp(28px, 6vh, 80px) 0;
}
.lind-home-scene .wp-block-image{
  margin: 0;
}
.lind-home-scene--corpus{
  padding-top: clamp(20px, 4vh, 52px);
}
.lind-home-scene--corpus .wp-block-image img{
  width: 100% !important;
  height: min(78vh, 920px) !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.lind-home-scene--two-up .wp-block-columns,
.lind-home-scene--bingo .wp-block-columns{
  gap: clamp(16px, 2.4vw, 34px);
  align-items: center;
}
.lind-home-scene--two-up .wp-block-columns.alignwide,
.lind-home-scene--bingo .wp-block-columns.alignwide{
  justify-content: center;
  margin-left: auto !important;
  margin-right: auto !important;
  width: min(1040px, calc(100vw - 56px));
  max-width: 1040px;
}
.lind-home-scene--two-up .wp-block-column{
  flex: 1 1 0 !important;
  min-width: 0;
}
.lind-home-scene--bingo .wp-block-column:first-child{
  flex: 0 1 68% !important;
  min-width: 0;
}
.lind-home-scene--bingo .wp-block-column:last-child{
  flex: 0 1 32% !important;
  min-width: 0;
}
.lind-home-scene--two-up .wp-block-image img{
  width: 100% !important;
  height: min(62vh, 640px) !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.lind-home-scene--bingo .wp-block-image img{
  width: 100% !important;
  height: min(64vh, 700px) !important;
  object-fit: contain !important;
}
.lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
  object-position: 46% center !important;
}
.lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
  object-position: 50% center !important;
}
.lind-home-scene--single .wp-block-image img{
  width: 100% !important;
  height: min(74vh, 860px) !important;
  object-fit: contain !important;
}

.lind-contact-images{
  gap: clamp(10px, 2vw, 24px);
}
.lind-contact-images .wp-block-image img{
  width: 100% !important;
  height: min(44vh, 500px) !important;
  object-fit: contain !important;
}

@media (min-width: 902px){
  body.page-id-115 .lind-contact-images,
  body.page-id-116 .lind-contact-images{
    width: min(1220px, calc(100vw - 84px));
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    gap: clamp(14px, 1.1vw, 22px) !important;
    justify-content: center;
    align-items: flex-start;
  }
  body.page-id-115 .lind-contact-images > .wp-block-column,
  body.page-id-116 .lind-contact-images > .wp-block-column{
    flex: 0 1 clamp(380px, 31vw, 530px) !important;
    min-width: 0;
  }
  body.page-id-115 .lind-contact-images .wp-block-image img,
  body.page-id-116 .lind-contact-images .wp-block-image img{
    height: min(47vh, 560px) !important;
  }
}

.lind-works-grid{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 3.2vw, 40px) clamp(18px, 2.2vw, 30px);
}
.lind-work-card{
  margin: 0 !important;
}
.lind-work-card .wp-block-image{
  margin: 0 !important;
}
.lind-work-card .wp-block-image img{
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.lind-work-overview--drawings .lind-work-card .wp-block-image,
body.lind-work-overview--prints .lind-work-card .wp-block-image,
body.lind-work-overview--paintings .lind-work-card .wp-block-image{
  aspect-ratio: 4 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: clamp(8px, 0.8vw, 12px);
  background: rgba(255, 255, 255, 0.34);
}
body.lind-work-overview--drawings .lind-work-card .wp-block-image img,
body.lind-work-overview--prints .lind-work-card .wp-block-image img,
body.lind-work-overview--paintings .lind-work-card .wp-block-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
.lind-work-card-title{
  margin: 10px 0 6px !important;
  font-size: clamp(1rem, 1.2vw, 1.1rem);
  line-height: 1.3;
}
.lind-work-card-meta{
  margin: 0 0 2px !important;
  font-size: 12px;
  color: var(--lind-muted);
  letter-spacing: .02em;
}

.lind-work-meta{
  margin: 16px 0 0;
  max-width: 860px;
}
.lind-work-meta-row{
  margin: 0 0 6px !important;
  font-size: 13px;
  color: var(--lind-text);
}

/* ArtistMeeting entry in Exhibitions / News */
.lind-artistmeeting-row{
  display: flex;
  align-items: center;
  gap: 14px 18px;
  flex-wrap: wrap;
}
.lind-artistmeeting-text{
  flex: 1 1 320px;
  min-width: min(100%, 240px);
}
.lind-artistmeeting-media{
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.lind-artistmeeting-logo{
  display: block;
  width: 100px !important;
  height: 100px !important;
  max-width: none !important;
  object-fit: contain;
}
.lind-artistmeeting-link{
  font-size: 12px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

@media (max-width: 1100px){
  .lind-works-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  .lind-works-grid{
    grid-template-columns: 1fr;
  }
  .lind-home-scene--corpus{
    padding-top: 10px;
    padding-bottom: 14px;
  }
  .lind-home-scene--corpus .wp-block-image img{
    height: min(58svh, 500px) !important;
    object-fit: cover !important;
    object-position: center 58% !important;
  }
  .lind-home-scene--two-up .wp-block-image img,
  .lind-home-scene--bingo .wp-block-image img,
  .lind-home-scene--single .wp-block-image img{
    height: auto !important;
  }
  .lind-home-scene--two-up .wp-block-columns.alignwide,
  .lind-home-scene--bingo .wp-block-columns.alignwide{
    width: calc(100vw - 24px);
    max-width: none;
  }
}

@media (max-width: 900px){
  .lind-home-scene--two-up .wp-block-columns,
  .lind-home-scene--bingo .wp-block-columns{
    flex-wrap: wrap !important;
    display: flex !important;
  }
  .lind-home-scene--two-up .wp-block-column{
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child{
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .lind-home-scene--two-up .wp-block-image img,
  .lind-home-scene--bingo .wp-block-image img{
    height: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img,
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    object-position: center center !important;
  }
  .lind-home-scene--two-up .wp-block-columns.alignwide,
  .lind-home-scene--bingo .wp-block-columns.alignwide{
    width: min(760px, calc(100vw - 24px));
    max-width: none;
  }
}

@media (min-width: 901px){
  .lind-home-scene--two-up .wp-block-columns.alignwide{
    width: min(980px, calc(100vw - 72px));
    max-width: 980px;
  }
  .lind-home-scene--two-up .wp-block-columns{
    flex-wrap: nowrap !important;
    display: flex !important;
  }
  .lind-home-scene--two-up .wp-block-column{
    flex-basis: 50% !important;
    min-width: 0;
  }
  .lind-home-scene--bingo .wp-block-columns.alignwide{
    width: min(980px, calc(100vw - 72px));
    max-width: 980px;
  }
  .lind-home-scene--bingo .wp-block-columns{
    display: grid !important;
    grid-template-columns: minmax(0, clamp(418px, 45vw, 520px)) minmax(0, 1fr);
    column-gap: clamp(14px, 2vw, 24px);
    row-gap: 0;
    align-items: center;
    justify-content: start !important;
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    flex-basis: auto !important;
    width: 100% !important;
    max-width: clamp(418px, 45vw, 520px);
    justify-self: start;
    min-width: 0;
  }
  .lind-home-scene--bingo .wp-block-column:last-child{
    flex-basis: auto !important;
    width: min(100%, clamp(300px, 32vw, 390px)) !important;
    max-width: clamp(300px, 32vw, 390px);
    justify-self: center;
    align-self: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image{
    width: 100%;
  }
  .lind-home-scene--two-up .wp-block-image img{
    height: min(58vh, 580px) !important;
  }
  .lind-home-scene--two-up .wp-block-image img{
    object-fit: cover !important;
    object-position: center center !important;
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(57vh, 590px) !important;
    object-position: 40% center !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    width: calc(100% - clamp(16px, 1.8vw, 28px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    height: min(42vh, 430px) !important;
    object-position: 44% center !important;
  }
}

@media (min-width: 1280px){
  .lind-home-scene--two-up .wp-block-columns.alignwide{
    width: min(1000px, calc(100vw - 92px));
    max-width: 1000px;
  }
  .lind-home-scene--bingo .wp-block-columns.alignwide{
    width: min(1000px, calc(100vw - 92px));
    max-width: 1000px;
  }
  .lind-home-scene--bingo .wp-block-columns{
    grid-template-columns: minmax(0, clamp(450px, 40vw, 540px)) minmax(0, 1fr);
    column-gap: clamp(16px, 1.6vw, 24px);
    justify-content: start !important;
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    max-width: clamp(450px, 40vw, 540px);
  }
  .lind-home-scene--bingo .wp-block-column:last-child{
    width: min(100%, clamp(330px, 26vw, 430px)) !important;
    max-width: clamp(330px, 26vw, 430px);
    justify-self: center;
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(59vh, 625px) !important;
    object-position: 38% center !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    width: calc(100% - clamp(18px, 1.6vw, 30px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    height: min(46vh, 470px) !important;
    object-position: 44% center !important;
  }
}

@media (min-width: 961px){
  .lind-home-scene--bingo .wp-block-columns{
    grid-template-columns: minmax(0, clamp(428px, 45vw, 532px)) minmax(0, 1fr);
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    max-width: clamp(428px, 45vw, 532px);
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(58vh, 605px) !important;
    object-position: 36% center !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    height: min(43vh, 442px) !important;
  }
}

@media (min-width: 1280px){
  .lind-home-scene--bingo .wp-block-columns{
    grid-template-columns: minmax(0, clamp(458px, 40vw, 556px)) minmax(0, 1fr);
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    max-width: clamp(458px, 40vw, 556px);
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(60vh, 640px) !important;
    object-position: 34% center !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    height: min(47vh, 490px) !important;
  }
}

@media (min-width: 940px) and (max-width: 1279px){
  .lind-home-scene--bingo .wp-block-columns{
    grid-template-columns: minmax(0, clamp(434px, 45.4vw, 538px)) minmax(0, 1fr);
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    max-width: clamp(434px, 45.4vw, 538px);
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(59.2vh, 610px) !important;
    object-position: 38% center !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    width: calc(100% - clamp(10px, 1.2vw, 18px)) !important;
    height: min(45.6vh, 476px) !important;
  }
}

@media (min-width: 1280px){
  .lind-home-scene--bingo .wp-block-columns{
    grid-template-columns: minmax(0, clamp(474px, 41.5vw, 584px)) minmax(0, 1fr);
  }
  .lind-home-scene--bingo .wp-block-column:first-child{
    max-width: clamp(474px, 41.5vw, 584px);
  }
  .lind-home-scene--bingo .wp-block-column:first-child .wp-block-image img{
    height: min(61.5vh, 672px) !important;
  }
  .lind-home-scene--bingo .wp-block-column:last-child .wp-block-image img{
    width: calc(100% - clamp(10px, 1vw, 16px)) !important;
    height: min(49.8vh, 536px) !important;
  }
}

/* ===== v0.5.5 single work layout + side navigation ===== */
.lind-work-detail .entry-content{
  display: grid;
  grid-template-columns: minmax(240px, 330px) minmax(0, 1fr);
  column-gap: clamp(34px, 5vw, 104px);
  row-gap: 0;
  align-items: start;
}
.lind-work-detail .entry-content > .lind-back{
  grid-column: 1 / -1;
  margin: 18px 0 26px;
}
.lind-work-detail .entry-content > .wp-block-image{
  grid-column: 2;
  grid-row: 2;
  margin: 0 !important;
  align-self: center;
}
.lind-work-detail .entry-content > .lind-work-meta{
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  align-self: center;
  max-width: 320px;
  padding: 2px 0;
}
.lind-work-detail .entry-content > .lind-work-info{
  grid-column: 1;
  grid-row: 3;
  margin-top: 30px;
  max-width: 320px;
}
.lind-work-detail .entry-content > .wp-block-image img{
  width: 100% !important;
  max-height: min(82vh, 980px) !important;
  height: auto !important;
  object-fit: contain !important;
}

.lind-work-side-nav{
  display: block;
}
.lind-work-nav{
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9998;
  width: auto;
  height: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: var(--lind-text);
  text-decoration: none !important;
  font-size: 44px;
  font-weight: 300;
  line-height: 1;
  opacity: .42;
  padding: 0 6px;
  transition: opacity 140ms ease;
}
.lind-work-nav:hover,
.lind-work-nav:focus{
  opacity: .78;
  text-decoration: none !important;
}
.lind-work-nav--prev{
  left: 12px;
}
.lind-work-nav--next{
  right: 12px;
}

/* Quiet metadata typography for single artwork detail pages */
.lind-work-detail .lind-work-meta-row{
  display: flex;
  align-items: baseline;
  column-gap: 10px;
  margin: 0 0 12px !important;
  font-size: 15px;
  line-height: 1.46;
  letter-spacing: 0.005em;
  color: #1f1f1d;
  font-weight: 400;
}
.lind-work-detail .lind-work-meta-row:last-child{
  margin-bottom: 0 !important;
}
.lind-work-detail .lind-work-meta-row strong{
  display: inline-flex;
  align-items: baseline;
  flex: 0 0 86px;
  margin-right: 0;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  color: #5f5f5b;
  opacity: .95;
}

@media (max-width: 766px){
  .lind-work-detail .entry-content{
    display: block;
  }
  .lind-work-detail .entry-content > .wp-block-image{
    margin: 0 !important;
  }
  .lind-work-detail .entry-content > .lind-work-meta{
    margin-top: 20px;
    max-width: 100%;
  }
  .lind-work-detail .lind-work-meta-row{
    column-gap: 8px;
    margin: 0 0 10px !important;
    font-size: 14px;
    line-height: 1.44;
  }
  .lind-work-detail .lind-work-meta-row strong{
    flex-basis: 78px;
    font-size: 11.5px;
    letter-spacing: 0.07em;
  }
  .lind-work-detail .entry-content > .lind-work-info{
    margin-top: 24px;
    max-width: 100%;
  }
  .lind-work-detail .entry-content > .wp-block-image img{
    max-height: none !important;
  }
  .lind-work-nav{
    width: auto;
    height: auto;
    top: auto;
    bottom: 14px;
    transform: none;
    font-size: 34px;
    opacity: .58;
    background: rgba(247,247,245,0.85);
    border-radius: 3px;
  }
  .lind-work-nav--prev{
    left: 10px;
  }
  .lind-work-nav--next{
    right: 10px;
  }
}
