.photo-page .page-photos {
    position: fixed;
    inset: 0;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
    background: #080d11;
}
.page-photos img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-photos::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(4 12 14 / 22%), rgb(4 12 14 / 10%) 42%, rgb(4 12 14 / 44%));
}
.page-photos img { animation: slow-camera 8s ease-out both; }
@keyframes slow-camera { from { transform: scale(1.015); } to { transform: scale(1.065); } }
.photo-page:has(.photo-toggle.is-paused) .page-photos img { animation-play-state: paused; }
.photo-page :is(.admin-bg, .admin-hero, .ec-hero, .members-hero, footer.site-footer) {
    background: transparent;
    border-top: 0;
}
.photo-page :is(.admin-bg, .admin-hero, .members-hero, .ec-hero, .hero)::before,
.photo-page .hero::after { content: none; }
.photo-page :is(.card, .admin-card, .dashboard-card, .greeting-card, .team-card,
    .ec-card, .ev-card, .wh-card, .tr-card, .wk-panel, #access-gate) {
    background: linear-gradient(180deg, rgb(7 11 16 / 88%), rgb(4 6 10 / 92%));
    border: 1px solid var(--border-color, #284135);
    border-left-color: rgb(77 255 166 / 32%);
    border-radius: 0;
    box-shadow: none;
}
.photo-page #access-gate {
    max-width: 900px;
    width: calc(100% - 2rem);
    margin: 1.5rem auto;
}

body.photo-page:has(> aside),body.member-desk {
    --panel-bg:rgba(7,11,16,.88);
    --panel-bg-strong:rgba(5,8,12,.94);
    --border-color:rgba(46,139,87,.32);
    --secondary-color:#389d68;
    --accent-mint:#4dffa6;
}
body.photo-page aside {background:var(--panel-bg-strong);border-color:var(--border-color)}
body.photo-page aside nav a:hover,body.photo-page aside nav [aria-current="page"] {color:var(--accent-mint);background:rgba(46,139,87,.18)}

.photo-page .members-hero > [class^="bg-img-"] {background-image:none}
