.watermark-image{position:absolute!important;left:14px!important;bottom:12px!important;top:auto!important;right:auto!important;transform:none!important;width:min(200px,44%)!important;height:auto!important;object-fit:contain!important;opacity:1;pointer-events:none;z-index:4}.media-count{position:absolute;top:14px;right:14px;padding:8px 11px;border-radius:99px;background:rgba(5,10,15,.8);backdrop-filter:blur(8px);color:#fff;font-size:.7rem;font-weight:700;z-index:5}
.new-badge{position:absolute;top:14px;left:14px;padding:7px 12px;border-radius:99px;background:var(--cyan);color:#071019;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;z-index:5}.post-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.gallery-tile{appearance:none;border:0;padding:0;margin:0;background:#071019;position:relative;overflow:hidden;cursor:zoom-in;aspect-ratio:4/3;outline:none}.gallery-tile:focus-visible{outline:3px solid var(--cyan);outline-offset:-3px;z-index:2}.gallery-tile:first-child:nth-last-child(odd){grid-column:1/-1;aspect-ratio:16/9}.gallery-tile>img:first-child{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .25s}.gallery-tile:hover>img:first-child{transform:scale(1.025);opacity:.86}.gallery-tile .play-badge{z-index:6}.tile-number{position:absolute;top:12px;left:12px;padding:7px 8px;color:#fff;background:rgba(5,10,15,.7);font-size:.66rem;letter-spacing:.1em;z-index:6}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:200;background:rgba(2,5,8,.97);display:grid;grid-template-columns:70px minmax(0,1fr) 70px;grid-template-rows:1fr auto;align-items:center;padding:28px;color:#fff}.lightbox-stage{height:calc(100vh - 105px);display:grid;place-items:center;position:relative;overflow:hidden}.lightbox-stage>img:first-child,.lightbox-stage>video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.lightbox-watermark{position:absolute!important;left:20px!important;bottom:18px!important;top:auto!important;right:auto!important;transform:none!important;width:min(260px,40%)!important;height:auto!important;opacity:1;pointer-events:none}.lightbox-close,.lightbox-nav{appearance:none;border:0;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .2s}.lightbox-close:hover,.lightbox-nav:hover{background:rgba(255,255,255,.18)}.lightbox-close{position:absolute;right:24px;top:20px;z-index:3;width:48px;height:48px;border-radius:50%;font-size:2rem}.lightbox-nav{width:52px;height:80px;font-size:1.45rem;justify-self:center}.lightbox-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;padding-top:16px;color:#a9b5c1;font-size:.75rem;letter-spacing:.07em}.lightbox-open{overflow:hidden;touch-action:none}@media(max-width:760px){.post-gallery{grid-template-columns:1fr}.gallery-tile:first-child:nth-last-child(odd){grid-column:auto;aspect-ratio:4/3}.lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:14px}.lightbox-stage{height:calc(100vh - 92px)}.lightbox-nav{width:38px;height:62px}.lightbox-close{right:12px;top:10px}.lightbox-foot span:last-child{display:none}}

.watermark-image{opacity:1}
/* Editorial mosaic — justified gallery: rows of full, uncropped photos
   scaled to a common row height and packed edge-to-edge, computed by
   JS in app.js (buildJustifiedGallery) from each tile's real aspect
   ratio. No staggered columns, no cropping. */
.post-gallery.layout-mosaic{display:flex;flex-wrap:wrap;gap:10px}
.layout-mosaic .gallery-tile{aspect-ratio:auto;grid-column:auto;grid-row:auto;flex-grow:0;flex-shrink:0;flex-basis:300px;height:260px}
.layout-mosaic .gallery-tile>img:first-child{width:100%;height:100%;object-fit:cover}
/* Vertical story — full width, natural ratio, no cropping. */
.post-gallery.layout-story{grid-template-columns:1fr}
.layout-story .gallery-tile{aspect-ratio:auto}
.layout-story .gallery-tile>img:first-child{height:auto;object-fit:initial}
/* Even grid — deliberate uniform crop for a tidy, consistent grid look. */
.post-gallery.layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.layout-grid .gallery-tile{aspect-ratio:4/3}
.post-gallery:not(.layout-mosaic) .gallery-tile:first-child:nth-last-child(odd){grid-column:1/-1;aspect-ratio:16/9}
.post-gallery.layout-mosaic .gallery-tile:first-child:nth-last-child(odd){aspect-ratio:auto}
.public-price{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:17px 0;margin:24px 0}.public-price>span{display:block;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.66rem;font-weight:750}.public-price strong{display:flex;align-items:baseline;gap:5px;font-size:2rem;letter-spacing:-.04em;margin-top:7px}.public-price strong small,.public-price strong em{color:var(--muted);font-size:.75rem;font-style:normal;font-weight:400;letter-spacing:0}.public-price p{font-size:.72rem;color:var(--muted);margin:8px 0 0}.lightbox-stage>img:first-child,.lightbox-stage>video{max-width:min(78vw,1100px);max-height:74vh}.lightbox-watermark{opacity:1}
@media(max-width:760px){.lightbox-stage>img:first-child,.lightbox-stage>video{max-width:84vw;max-height:70vh}}
@media(max-width:480px){.post-gallery.layout-grid{grid-template-columns:1fr}.layout-grid .gallery-tile{grid-column:1;aspect-ratio:4/3}}
