/* Scoped to opt-in album posts; the original layout remains untouched. */
.handsome-album-viewer { position: fixed; inset: 0; width: 100vw; height: 100vh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: rgba(12,15,18,.96); color: white; overflow: hidden; }
.handsome-album-viewer::backdrop { background: rgba(0,0,0,.8); }
.handsome-album-viewer img { position: absolute; left: 50%; top: 50%; max-width: none; max-height: none; object-fit: contain; image-orientation: from-image; }
.handsome-album-viewer button { position: absolute; right: 16px; top: 16px; padding: 10px 18px; border: 1px solid white; border-radius: 4px; color: white; background: #30343b; cursor: pointer; }
.handsome-album #post-panel > .wrapper-md { padding: 24px; }
.handsome-album #postpage > .single-post.panel { background: transparent; border: 0; box-shadow: none; }
.handsome-album #post-content { padding: 0; }
.handsome-album.has-album-cover #post-panel > header { display: none; }
.handsome-album .handsome-album-hero[hidden] { display: none !important; }
.handsome-album .handsome-album-hero { position: relative; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; aspect-ratio: 4.5 / 1; min-height: 200px; margin: 0 0 24px; border-radius: 4px; overflow: hidden; background: #313b40; }
.handsome-album .handsome-album-cover { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; margin: 0; }
.handsome-album .handsome-album-hero-copy { position: absolute; bottom: 24px; left: 24px; right: 24px; color: #fff; text-shadow: 0 2px 8px #000; }
.handsome-album .handsome-album-hero-copy h1 { color: #fff; font-size: clamp(28px, 3vw, 42px); line-height: 1.3; margin: 0 0 6px; font-weight: 600; }
.handsome-album .handsome-album-hero-copy p { margin: 0; font-size: 16px; line-height: 1.6; letter-spacing: .12em; }
.handsome-album .handsome-album-summary { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline; margin: 0 0 12px; line-height: 1.6; }
.handsome-album .handsome-album-summary strong { font-size: 18px; font-weight: 600; }
.handsome-album .handsome-album-summary span { font-size: 14px; opacity: .65; }
.handsome-album #post-content .handsome-gallery { width: 100%; margin: 0 0 24px; padding: 0; display: flex; flex-wrap: wrap; gap: var(--album-gap); transition: none; }
.handsome-album #post-content .handsome-gallery > figure { box-sizing: border-box; position: relative; display: block; float: none; clear: none; flex: none !important; min-width: 0; min-height: 0; width: var(--album-w, 100%); height: auto; margin: 0; padding: 0; overflow: hidden; border: 0; border-radius: 4px; background: rgba(128,128,128,.08); }
.handsome-album #post-content .handsome-gallery > figure > a { display: block; width: 100%; height: var(--album-h, auto); padding: 0 !important; position: relative; margin: 0; background: none !important; border: 0; }
.handsome-album #post-content .handsome-gallery > figure > a::before,
.handsome-album #post-content .handsome-gallery > figure > a::after { display: none; }
.handsome-album #post-content .handsome-gallery img { position: static; display: block; width: 100%; height: var(--album-h, auto); max-width: 100% !important; padding: 0 !important; margin: 0 !important; border: 0; border-radius: 4px; object-fit: contain; image-orientation: from-image; }
.handsome-album #post-content .handsome-gallery figcaption { display: none; }
.handsome-album[data-album-orientation="auto"] #post-content .handsome-gallery img { image-orientation: from-image; }
.handsome-album #post-content .handsome-gallery > figure[data-rotation]:not([data-rotation="0"]) img { position: absolute; top: 50%; left: 50%; max-width: none !important; transform-origin: center; }
.handsome-album[data-album-captions="show"] #post-content .handsome-gallery > figure > figcaption { display: block; position: static; padding: 8px 10px; width: auto; max-height: none; font-size: 13px; line-height: 1.5; text-align: left; color: inherit; overflow-wrap: anywhere; }
.handsome-album #post-content .handsome-gallery a:focus-visible { outline: 3px solid #39798b; outline-offset: -3px; }
.handsome-album[data-album-layout="masonry"] #post-content .handsome-gallery { display: block; columns: var(--album-target); column-gap: var(--album-gap); }
.handsome-album[data-album-layout="masonry"] #post-content .handsome-gallery > figure { width: 100%; break-inside: avoid; margin-bottom: var(--album-gap); }
.handsome-album .handsome-album-empty { padding: 24px 0; opacity: .65; }
@media (max-width: 767px) {
    .handsome-album #post-panel > .wrapper-md { padding: 16px; }
    .handsome-album .handsome-album-hero-copy { bottom: 16px; left: 16px; right: 16px; }
    .handsome-album .handsome-album-cover { height: 200px; }
    .handsome-album[data-album-layout="masonry"] #post-content .handsome-gallery { column-count: 2; column-width: auto; }
}
@media (max-width: 360px) {
    .handsome-album[data-album-layout="masonry"] #post-content .handsome-gallery { column-count: 1; }
}
