/* Metadata sits above controls; each icon has its own 48px tap target. */
body .adult-album-ui { position:relative!important; inset:auto!important; display:flex!important; flex-direction:column!important; align-items:center!important; justify-content:center!important; gap:8px!important; width:100%!important; padding:18px 12px 10px!important; margin:0!important; background:transparent!important; color:inherit; z-index:6; }
body .adult-album-ui :is(.adult-album-count,#photo-number,[data-adult-count]) { position:static!important; inset:auto!important; display:block!important; order:0!important; width:auto!important; margin:0!important; padding:0!important; background:none!important; border:0!important; font:400 .8125rem/1.5 Arial,sans-serif!important; letter-spacing:.08em!important; color:inherit!important; opacity:.65; text-align:center!important; transform:none!important; }
body .adult-album-ui .adult-album-actions { display:flex!important; position:static!important; inset:auto!important; flex-direction:row!important; align-items:center!important; justify-content:center!important; gap:16px!important; margin:0!important; padding:0!important; width:auto!important; transform:none!important; }
body .adult-album-ui .adult-album-actions button:is(#albumPause,#album-pause,[data-adult-pause],[data-adult-prev],[data-adult-next]) { position:static!important; inset:auto!important; display:inline-flex!important; align-items:center!important; justify-content:center!important; width:48px!important; height:48px!important; min-width:48px!important; min-height:48px!important; max-width:48px!important; margin:0!important; padding:0!important; flex:0 0 48px!important; border:1px solid currentColor!important; border-radius:50%!important; color:inherit!important; background:transparent!important; font:400 22px/1 Arial,sans-serif!important; letter-spacing:0!important; text-indent:0!important; text-transform:none!important; transform:none!important; cursor:pointer; touch-action:manipulation; }
body .adult-album-ui button svg { position:static!important; display:block!important; width:20px!important; height:20px!important; fill:currentColor; }
body .adult-album-ui button:focus-visible { outline:2px solid currentColor;outline-offset:4px; }
body .adult-album-ui button:hover { opacity:.75; }
body .adult-album .adult-photo-image { max-width:var(--adult-native-width,100%)!important; margin-inline:auto!important; }
@keyframes adult-photo-zoom { from { scale:1; } to { scale:1.02; } }
/* Individual, generously framed photographs; no blurred filler or sheet magnification. */
body .catalog-photo-header,body .catalog-photo-closing { isolation:isolate;position:relative;overflow:hidden; }
body .catalog-media { position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;background-repeat:no-repeat!important;background-color:var(--base,var(--night,var(--forest,#252b2c)));pointer-events:none; }
body .catalog-photo-header :is(.birthday-photo--hero,.hero-photo,.hero__photo,.hero-media),body .catalog-photo-closing :is(.birthday-photo--closing,.closing-photo,.closing__photo) { display:none!important; }
body .catalog-photo-closing>img { opacity:0!important; }
body .catalog-photo-header :is(.hero-shade,.hero-filter,.hero-tint,.hero__shade) { display:none!important; }
body .catalog-photo-header .catalog-header-veil { position:absolute!important;inset:0!important;z-index:1!important;background:var(--catalog-header-tint)!important;pointer-events:none; }
body .catalog-photo-header .hero-copy,body .catalog-photo-header .hero__content,body .catalog-photo-header .hero__copy { z-index:5!important; }
body .catalog-crop-box { position:absolute;overflow:hidden; }
body .catalog-crop-box svg { display:block!important;width:100%!important;height:100%!important;opacity:1!important;overflow:hidden!important; }
body .catalog-media--header { animation:catalog-header-zoom 20s ease-in-out infinite alternate!important;transform-origin:50% 65%; }
@keyframes catalog-header-zoom {from {scale:1;}to {scale:1.015;}}
@media(prefers-reduced-motion:reduce) {body .catalog-media--header {animation:none!important;}}

/* upper-copy-safe: typography stays above the portrait, without changing the model. */
body .catalog-photo-header .hero-copy {top:5%!important;bottom:auto!important;left:0!important;right:0!important;width:100%!important;max-width:none!important;padding-inline:24px!important;transform:none!important;}
