/* NSM Myndir — album grid + lightbox. Inherits theme tokens (var --…) with red/black fallbacks. */
.nsm-myndir{
  --m-card:var(--card,#fff); --m-ink:var(--ink,#191310); --m-red:var(--red,#c1272d);
  --m-line:var(--line,#e8ddd5); --m-ground2:var(--ground-2,#efe7e1);
  --m-fd:var(--font-display,"Avenir Next Condensed","Arial Narrow","Roboto Condensed",sans-serif);
  --m-shadow:var(--shadow-soft,0 6px 20px -14px rgba(40,20,15,.28));
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
}
.nsm-myndir figure{margin:0;position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/2;background:var(--m-ground2);box-shadow:var(--m-shadow);cursor:zoom-in}
.nsm-myndir figure.wide{grid-column:auto;aspect-ratio:3/2}
.nsm-myndir img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.nsm-myndir figure:hover img{transform:scale(1.06)}
.nsm-myndir figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:.85rem .9rem;color:#fff;font-family:var(--m-fd);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;background:linear-gradient(0deg,rgba(15,10,8,.82),transparent)}
@media(max-width:760px){.nsm-myndir{grid-template-columns:repeat(2,1fr)}}

.nsm-mlb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:3vw;background:rgba(15,10,8,.94);opacity:0;transition:opacity .2s}
.nsm-mlb.open{opacity:1}
.nsm-mlb[hidden]{display:none}
.nsm-mlb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:.9rem;max-width:92vw}
.nsm-mlb img{max-width:92vw;max-height:80vh;width:auto;height:auto;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.6);object-fit:contain}
.nsm-mlb figcaption{color:#f3ece2;font-family:var(--m-fd,sans-serif);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;text-align:center}
.nsm-mlb button{position:absolute;border:0;background:rgba(255,255,255,.10);color:#fff;cursor:pointer;display:grid;place-items:center;border-radius:999px;transition:background .15s}
.nsm-mlb button:hover{background:var(--red,#c1272d)}
.nsm-mlb-close{top:3vh;right:3vw;width:46px;height:46px;font-size:1.7rem;line-height:1}
.nsm-mlb-prev,.nsm-mlb-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:2rem;line-height:1}
.nsm-mlb-prev{left:2vw}.nsm-mlb-next{right:2vw}
.nsm-mlb-lock{overflow:hidden}
@media(max-width:600px){.nsm-mlb-prev,.nsm-mlb-next,.nsm-mlb-close{width:40px;height:40px;font-size:1.5rem}}
