:root {
    --photo-bg: #060809;
    --photo-panel: #0d1112;
    --photo-line: rgba(255,255,255,.12);
    --photo-muted: #a5adae;
    --photo-text: #f2f4f2;
}

.photography-public-page,
.photography-detail-public-page { background: var(--photo-bg); }

.photography-page,
.photography-detail-page {
    min-height: 100vh;
    min-height: 100svh;
    color: var(--photo-text);
    background:
        radial-gradient(circle at 78% 8%, color-mix(in srgb, var(--accent, #8eb6b8) 11%, transparent), transparent 30rem),
        linear-gradient(180deg, #070a0b, var(--photo-bg));
}

.photography-progress {
    position: fixed; z-index: 100; inset: 0 auto auto 0; width: 100%; height: 2px;
    transform: scaleX(0); transform-origin: left center; will-change: transform; contain: strict;
    background: var(--accent, #8eb6b8);
    box-shadow: 0 0 20px color-mix(in srgb, var(--accent, #8eb6b8) 70%, transparent);
}

.photography-topbar {
    position: fixed; z-index: 90; inset: 0 0 auto; min-height: 5rem;
    display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1rem;
    padding: max(.9rem, env(safe-area-inset-top)) clamp(1.2rem,4vw,4rem) .9rem;
    border-bottom: 1px solid transparent;
    transition: background .3s ease, border-color .3s ease;
}
.photography-topbar.is-scrolled { border-color: var(--photo-line); background: rgba(6,8,9,.84); backdrop-filter: blur(18px); }
.photography-back,.photography-wordmark { color: #eef1ef; text-decoration: none; }
.photography-back { justify-self: start; display: inline-flex; align-items: center; gap: .7rem; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; }
.photography-back span:first-child { color: var(--accent, #8eb6b8); font-size: 1rem; }
.photography-wordmark { font-family: Georgia,"Times New Roman",serif; letter-spacing: .32em; margin-left: .32em; }
.photography-area-name { justify-self: end; color: #90999a; font-size: .66rem; letter-spacing: .18em; text-transform: uppercase; }

.photography-hero,
.photography-detail-hero {
    min-height: 100vh; min-height: 100svh; position: relative; display: grid; align-items: end;
    overflow: hidden; isolation: isolate; padding: 9rem clamp(1.2rem,7vw,8rem) clamp(6rem,12vh,9rem);
}
.photography-hero-image,
.photography-detail-image {
    position: absolute; inset: 0; z-index: -5;
    background-image:
        linear-gradient(90deg, rgba(3,5,6,.94) 0%, rgba(3,5,6,.7) 43%, rgba(3,5,6,.22) 72%, rgba(3,5,6,.72) 100%),
        linear-gradient(180deg, rgba(3,5,6,.08), rgba(3,5,6,.2) 56%, var(--photo-bg)),
        var(--photography-image), linear-gradient(145deg,#172022,#060809);
    background-size: cover; background-position: center; filter: saturate(.76) contrast(1.05); transform: scale(1.015);
}
.photography-detail-image { background-image: linear-gradient(90deg,rgba(3,5,6,.95),rgba(3,5,6,.46) 62%,rgba(3,5,6,.72)),linear-gradient(180deg,transparent 34%,var(--photo-bg)),var(--collection-image),linear-gradient(145deg,#172022,#060809); }
.photography-hero::after,.photography-detail-hero::after { content:""; position:absolute; z-index:-1; inset:auto 0 0; height:24rem; background:linear-gradient(180deg,transparent,var(--photo-bg)); }

.photography-hero-shutter { position:absolute; z-index:-2; right:clamp(-11rem,-7vw,-3rem); top:13%; width:clamp(24rem,48vw,50rem); aspect-ratio:1; border:1px solid color-mix(in srgb,var(--accent,#8eb6b8) 32%,transparent); border-radius:50%; opacity:.5; }
.photography-hero-shutter::before,.photography-hero-shutter::after { content:""; position:absolute; inset:14%; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.photography-hero-shutter::after { inset:34%; border-color:var(--accent,#8eb6b8); }
.photography-hero-shutter i { position:absolute; left:50%; top:50%; width:1px; height:50%; transform-origin:top; background:linear-gradient(rgba(255,255,255,.18),transparent); }
.photography-hero-shutter i:nth-child(1){transform:rotate(0deg)} .photography-hero-shutter i:nth-child(2){transform:rotate(60deg)} .photography-hero-shutter i:nth-child(3){transform:rotate(120deg)} .photography-hero-shutter i:nth-child(4){transform:rotate(180deg)} .photography-hero-shutter i:nth-child(5){transform:rotate(240deg)} .photography-hero-shutter i:nth-child(6){transform:rotate(300deg)}

.photography-hero-content,.photography-detail-hero-content { width:min(64rem,100%); position:relative; padding-left:clamp(1.2rem,3vw,3.2rem); }
.photography-hero-content::before,.photography-detail-hero-content::before { content:""; position:absolute; left:0; top:.2rem; width:1px; height:100%; background:linear-gradient(var(--accent,#8eb6b8),transparent); }
.photography-eyebrow,.photography-detail-kicker { display:flex; align-items:center; gap:.9rem; color:var(--accent,#8eb6b8); font-size:.66rem; letter-spacing:.24em; text-transform:uppercase; }
.photography-detail-kicker i { padding-left:.8rem; border-left:1px solid var(--photo-line); color:#b5bdbd; font-style:normal; }
.photography-hero h1,.photography-detail-hero h1 { max-width:14ch; margin:.85rem 0 1.2rem; font-family:Georgia,"Times New Roman",serif; font-size:clamp(4rem,10vw,9.6rem); font-weight:400; line-height:.9; letter-spacing:-.045em; }
.photography-hero-lead,.photography-detail-hero-content>p { max-width:44rem; margin:0; color:#e1e6e4; font-size:clamp(1.15rem,2.1vw,1.75rem); line-height:1.45; }
.photography-hero-intro { max-width:44rem; margin:1.4rem 0 0; color:#adb6b5; line-height:1.75; }
.photography-hero-index { position:absolute; right:clamp(1.5rem,6vw,7rem); bottom:clamp(6rem,13vh,10rem); display:grid; justify-items:end; }
.photography-hero-index span { font-family:Georgia,"Times New Roman",serif; font-size:clamp(4rem,8vw,8rem); line-height:.8; color:rgba(255,255,255,.12); }
.photography-hero-index small { margin-top:1rem; color:var(--accent,#8eb6b8); font-size:.62rem; letter-spacing:.22em; }
.photography-scroll-cue { position:absolute; right:clamp(1.5rem,4vw,4rem); bottom:2rem; display:flex; align-items:center; gap:.8rem; color:#9ca5a4; text-decoration:none; font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; }
.photography-scroll-cue i { width:.8rem; height:.8rem; border-right:1px solid var(--accent,#8eb6b8); border-bottom:1px solid var(--accent,#8eb6b8); transform:rotate(45deg); animation:photo-cue 1.8s ease-in-out infinite; }
.photography-detail-frame { position:absolute; z-index:-2; inset:13% 5% 10% 52%; border:1px solid rgba(255,255,255,.12); box-shadow:inset 0 0 0 .7rem rgba(0,0,0,.08); }

.photography-content,.photography-detail-content { width:min(92rem,calc(100% - 3rem)); margin:0 auto; }
.photography-section { padding:clamp(5rem,10vw,9rem) 0; border-top:1px solid var(--photo-line); }
.photography-section:first-child { border-top:0; }
.photography-section-heading { display:grid; grid-template-columns:3rem minmax(0,1fr); align-items:baseline; gap:1rem; margin-bottom:clamp(2.5rem,5vw,4.5rem); }
.photography-section-heading>span { color:var(--accent,#8eb6b8); font-size:.65rem; letter-spacing:.18em; }
.photography-section-heading h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.4rem,5vw,5.2rem); font-weight:400; line-height:1; }
.photography-section-intro { max-width:50rem; margin:-1.5rem 0 3rem 4rem; color:var(--photo-muted); line-height:1.75; }
.photography-overview-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(17rem,.8fr); gap:clamp(2rem,7vw,7rem); padding-left:4rem; }
.photography-prose,.photography-detail-prose { color:#c2c9c7; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.9; }
.photography-overview blockquote { margin:0; padding:1.5rem 0 1.5rem 2rem; border-left:1px solid var(--accent,#8eb6b8); color:#edf3f0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.5rem,2.8vw,2.5rem); line-height:1.35; }

.photography-filters { display:flex; flex-wrap:wrap; gap:.55rem; margin:0 0 2rem 4rem; }
.photography-filters button { min-height:2.6rem; padding:.65rem .9rem; border:1px solid var(--photo-line); color:#aeb7b5; background:transparent; font:inherit; font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }
.photography-filters button:hover,.photography-filters button[aria-pressed="true"] { border-color:var(--accent,#8eb6b8); color:#fff; background:color-mix(in srgb,var(--accent,#8eb6b8) 10%,transparent); }
.photography-collections-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.photography-collection-card { min-height:34rem; position:relative; overflow:hidden; border:1px solid var(--photo-line); background:var(--photo-panel); }
.photography-collection-card.is-featured { grid-column:span 2; min-height:42rem; }
.photography-collection-card[hidden] { display:none; }
.photography-collection-card>a { min-height:inherit; position:relative; display:grid; align-items:end; color:inherit; text-decoration:none; isolation:isolate; }
.photography-card-media { position:absolute; inset:0; z-index:-3; background-image:var(--card-image),linear-gradient(145deg,#192224,#090c0d); background-size:cover; background-position:center; filter:saturate(.78) contrast(1.04); transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease; }
.photography-card-overlay { position:absolute; inset:0; z-index:-2; background:linear-gradient(180deg,rgba(4,6,7,.1),rgba(4,6,7,.28) 45%,rgba(4,6,7,.94)); }
.photography-card-number { position:absolute; top:1.6rem; right:1.7rem; color:rgba(255,255,255,.35); font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.8rem,6vw,6rem); line-height:1; }
.photography-card-copy { display:grid; gap:.8rem; padding:clamp(1.5rem,4vw,3.2rem); max-width:58rem; }
.photography-card-copy small { color:var(--accent,#8eb6b8); font-size:.64rem; letter-spacing:.16em; text-transform:uppercase; }
.photography-card-copy strong { font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,4vw,4.5rem); font-weight:400; line-height:1; }
.photography-collection-card:not(.is-featured) .photography-card-copy strong { font-size:clamp(1.9rem,3.2vw,3.1rem); }
.photography-card-copy>span { max-width:45rem; color:#c2c9c7; line-height:1.65; }
.photography-card-copy i { display:flex; align-items:center; gap:.8rem; color:#f0f3f2; font-size:.66rem; font-style:normal; letter-spacing:.17em; text-transform:uppercase; }
.photography-card-copy b { color:var(--accent,#8eb6b8); font-size:1rem; transition:transform .25s ease; }
.photography-collection-card:hover .photography-card-media { transform:scale(1.045); filter:saturate(.92) contrast(1.06); }
.photography-collection-card:hover .photography-card-copy b { transform:translateX(.35rem); }
.photography-collection-card.is-editorial .photography-card-media { filter:saturate(.38) contrast(1.08) brightness(.68); }
.photography-collection-card.is-editorial .photography-card-overlay { background:linear-gradient(145deg,rgba(4,6,7,.24),rgba(4,6,7,.74) 56%,rgba(4,6,7,.97)); }
.photography-collection-card.is-editorial .photography-card-copy i { color:#c9d0ce; }
.photography-collection-card.is-editorial:hover .photography-card-media { filter:saturate(.52) contrast(1.08) brightness(.74); }
.photography-filter-empty { margin:2rem 0 0; padding:1.5rem; border:1px solid var(--photo-line); color:var(--photo-muted); }

.photography-selection-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-rows:6rem; gap:.8rem; }
.photography-selection-item { position:relative; overflow:hidden; border:1px solid var(--photo-line); color:#fff; text-decoration:none; background:#0d1112; }
.photography-selection-item .photo-effect { height:100%; transition:transform .55s ease; }
.photography-selection-item .photo-effect img { width:100%; height:100%; object-fit:cover; }
.photography-selection-item::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(3,5,6,.8)); }
.photography-selection-label { position:absolute; z-index:6; left:1rem; bottom:.85rem; font-size:.65rem; letter-spacing:.13em; text-transform:uppercase; }
.photography-selection-item:hover .photo-effect { transform:scale(1.035); }
.photography-selection-item.item-1 { grid-column:span 7; grid-row:span 5; }
.photography-selection-item.item-2 { grid-column:span 5; grid-row:span 3; }
.photography-selection-item.item-3 { grid-column:span 5; grid-row:span 4; }
.photography-selection-item.item-4 { grid-column:span 4; grid-row:span 3; }
.photography-selection-item.item-5 { grid-column:span 4; grid-row:span 4; }
.photography-selection-item.item-6 { grid-column:span 4; grid-row:span 3; }

.photography-related-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.8rem; }
.photography-related-card { min-height:18rem; position:relative; overflow:hidden; display:flex; align-items:flex-end; border:1px solid var(--photo-line); color:#fff; text-decoration:none; isolation:isolate; }
.photography-related-media { position:absolute; inset:0; z-index:-2; background-image:linear-gradient(180deg,transparent,rgba(4,6,7,.94)),var(--related-image),linear-gradient(145deg,#182022,#090c0d); background-size:cover; background-position:center; filter:saturate(.55); transition:transform .5s ease; }
.photography-related-copy { width:100%; display:grid; gap:.55rem; padding:1.15rem; }
.photography-related-copy strong { font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; font-weight:400; }
.photography-related-copy small { color:#b4bcba; line-height:1.45; }
.photography-related-copy i { color:var(--related-accent,var(--accent)); font-style:normal; }
.photography-related-card:hover .photography-related-media { transform:scale(1.04); filter:saturate(.85); }

.photography-cta { margin:clamp(2rem,5vw,5rem) 0 clamp(5rem,10vw,9rem); padding:clamp(2rem,5vw,4rem); display:flex; align-items:center; justify-content:space-between; gap:2rem; border:1px solid color-mix(in srgb,var(--accent,#8eb6b8) 42%,transparent); background:linear-gradient(120deg,color-mix(in srgb,var(--accent,#8eb6b8) 10%,transparent),rgba(255,255,255,.015)); }
.photography-cta>div { display:grid; gap:.7rem; }
.photography-cta > div > span { font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.8rem,3.6vw,3.25rem); line-height:1.08; text-wrap:balance; }
.photography-cta p { max-width:48rem; margin:0; color:var(--photo-muted); font-size:clamp(.95rem,1.15vw,1.05rem); line-height:1.65; }
.photography-cta a { flex:0 0 auto; display:flex; align-items:center; gap:.8rem; padding:1rem 1.2rem; border:1px solid var(--accent,#8eb6b8); color:#fff; text-decoration:none; font-size:.68rem; letter-spacing:.15em; text-transform:uppercase; }
.photography-cta a i { color:var(--accent,#8eb6b8); font-style:normal; }
.photography-footer { min-height:6rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.5rem clamp(1.2rem,4vw,4rem); border-top:1px solid var(--photo-line); color:#858e8d; font-size:.68rem; letter-spacing:.1em; }
.photography-footer a { color:#dfe4e2; text-decoration:none; font-family:Georgia,"Times New Roman",serif; letter-spacing:.25em; }

.photography-detail-intro { display:grid; grid-template-columns:minmax(15rem,.65fr) minmax(0,1.35fr); gap:clamp(2rem,7vw,7rem); padding:clamp(5rem,10vw,9rem) 0; }
.photography-detail-meta { display:grid; align-content:start; gap:1rem; }
.photography-detail-meta div { display:grid; gap:.35rem; padding-bottom:1rem; border-bottom:1px solid var(--photo-line); }
.photography-detail-meta span { color:#899291; font-size:.62rem; letter-spacing:.17em; text-transform:uppercase; }
.photography-detail-meta strong { font-weight:500; }
.photography-detail-gallery,.photography-detail-more { padding:clamp(5rem,10vw,9rem) 0; border-top:1px solid var(--photo-line); }
.photography-masonry { columns:3; column-gap:.9rem; }
.photography-masonry-item { break-inside:avoid; margin:0 0 .9rem; }
.photography-masonry-item button { width:100%; position:relative; display:block; padding:0; border:1px solid var(--photo-line); background:#0a0d0e; cursor:zoom-in; overflow:hidden; }
.photography-masonry-item .photo-effect { width:100%; transition:transform .5s ease; }
.photography-masonry-item .photo-effect img { width:100%; height:auto; display:block; }
.photography-masonry-zoom { position:absolute; z-index:6; right:1rem; bottom:1rem; width:2.3rem; height:2.3rem; display:grid; place-items:center; border:1px solid rgba(255,255,255,.4); color:#fff; background:rgba(5,7,8,.5); backdrop-filter:blur(8px); opacity:0; transform:translateY(.4rem); transition:opacity .25s ease,transform .25s ease; }
.photography-masonry-item button:hover .photo-effect { transform:scale(1.018); }
.photography-masonry-item button:hover .photography-masonry-zoom { opacity:1; transform:none; }
.photography-masonry-item figcaption { padding:.7rem .2rem .2rem; color:#9da6a4; font-size:.78rem; line-height:1.5; }
.photography-detail-more-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; }
.photography-detail-more-grid a { min-height:24rem; position:relative; overflow:hidden; display:grid; align-content:end; gap:.55rem; padding:1.4rem; border:1px solid var(--photo-line); color:#fff; text-decoration:none; isolation:isolate; }
.photography-detail-more-grid a>span { position:absolute; inset:0; z-index:-2; background-image:linear-gradient(180deg,rgba(3,5,6,.1),rgba(3,5,6,.92)),var(--more-image),linear-gradient(145deg,#192224,#090c0d); background-size:cover; background-position:center; transition:transform .5s ease; }
.photography-detail-more-grid small { color:var(--accent,#8eb6b8); font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; }
.photography-detail-more-grid strong { font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.5rem,2.5vw,2.5rem); font-weight:400; }
.photography-detail-more-grid i { color:var(--accent,#8eb6b8); font-style:normal; }
.photography-detail-more-grid a:hover>span { transform:scale(1.04); }


.photography-selection-item,
.photography-masonry-item button,
.photography-lightbox figure {
    contain: paint;
    isolation: isolate;
}

.photography-lightbox { width:100vw; max-width:none; height:100vh; height:100dvh; max-height:none; margin:0; padding:0; border:0; color:#fff; background:rgba(3,5,6,.96); }
.photography-lightbox::backdrop { background:rgba(3,5,6,.96); }
.photography-lightbox-inner { min-height:100%; position:relative; display:grid; place-items:center; padding:clamp(3.5rem,7vw,6rem); }
.photography-lightbox figure { max-width:min(88vw,110rem); max-height:82vh; margin:0; display:grid; justify-items:center; gap:1rem; }
.photography-lightbox-effect { max-width:100%; max-height:75vh; max-height:75dvh; }
.photography-lightbox-effect img { max-width:100%; max-height:75vh; max-height:75dvh; width:auto; height:auto; object-fit:contain; box-shadow:0 30px 100px rgba(0,0,0,.5); }
.photography-lightbox figcaption { max-width:50rem; color:#c1c9c7; text-align:center; line-height:1.55; }
.photography-lightbox-close,.photography-lightbox-nav { position:absolute; z-index:2; border:1px solid rgba(255,255,255,.2); color:#fff; background:rgba(255,255,255,.04); cursor:pointer; }
.photography-lightbox-close { top:max(1rem,env(safe-area-inset-top)); right:1rem; width:3rem; height:3rem; font-size:1.6rem; }
.photography-lightbox-nav { top:50%; width:3.4rem; height:3.4rem; transform:translateY(-50%); font-size:1.2rem; }
.photography-lightbox-nav.is-prev { left:1rem; } .photography-lightbox-nav.is-next { right:1rem; }
.photography-lightbox-count { position:absolute; left:50%; bottom:max(1rem,env(safe-area-inset-bottom)); transform:translateX(-50%); color:#aab2b0; font-size:.68rem; letter-spacing:.15em; }
html.lightbox-open { overflow:hidden; }

.reveal-ready [data-reveal] { opacity:0; transform:translateY(1.5rem); transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal-ready [data-reveal].is-visible { opacity:1; transform:none; }
@keyframes photo-cue { 0%,100%{transform:rotate(45deg) translate(0,0)} 50%{transform:rotate(45deg) translate(.25rem,.25rem)} }

@media (max-width:1050px) {
    .photography-related-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .photography-masonry { columns:2; }
}
@media (max-width:800px) {
    .photography-topbar { min-height:4.4rem; grid-template-columns:1fr auto; }
    .photography-wordmark { justify-self:end; }
    .photography-area-name { display:none; }
    .photography-hero,.photography-detail-hero { min-height:88svh; padding:7.5rem 1.25rem 6rem; }
    .photography-hero-shutter { right:-16rem; top:20%; opacity:.28; }
    .photography-detail-frame { display:none; }
    .photography-hero h1,.photography-detail-hero h1 { font-size:clamp(3.8rem,16vw,6.3rem); }
    .photography-hero-index { display:none; }
    .photography-content,.photography-detail-content { width:min(100% - 2rem,92rem); }
    .photography-overview-grid,.photography-detail-intro { grid-template-columns:1fr; padding-left:0; }
    .photography-section-intro,.photography-filters { margin-left:0; }
    .photography-collections-grid { grid-template-columns:1fr; }
    .photography-collection-card.is-featured { grid-column:auto; }
    .photography-collection-card,.photography-collection-card.is-featured { min-height:31rem; }
    .photography-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .photography-detail-more-grid { grid-template-columns:1fr; }
    .photography-detail-more-grid a { min-height:19rem; }
    .photography-cta { align-items:stretch; flex-direction:column; gap:1.35rem; margin-bottom:5rem; padding:1.5rem; }
    .photography-cta > div > span { font-size:clamp(1.65rem,7vw,2.15rem); }
    .photography-cta p { font-size:.95rem; line-height:1.6; }
    .photography-cta a { justify-content:center; max-width:100%; white-space:normal; line-height:1.4; }
}
@media (max-width:620px) {
    .photography-back span:last-child { display:none; }
    .photography-wordmark { font-size:.82rem; }
    .photography-hero-content,.photography-detail-hero-content { padding-left:1rem; }
    .photography-scroll-cue { left:1.25rem; right:auto; }
    .photography-section { padding:4.5rem 0; }
    .photography-section-heading { grid-template-columns:2rem minmax(0,1fr); gap:.5rem; }
    .photography-selection-grid { display:grid; grid-template-columns:1fr 1fr; grid-auto-rows:13rem; gap:.55rem; }
    .photography-selection-item.item-1,.photography-selection-item.item-2,.photography-selection-item.item-3,.photography-selection-item.item-4,.photography-selection-item.item-5,.photography-selection-item.item-6 { grid-column:span 1; grid-row:span 1; }
    .photography-selection-item:first-child { grid-column:span 2; grid-row:span 2; }
    .photography-related-grid { grid-template-columns:1fr; }
    .photography-related-card { min-height:13rem; }
    .photography-masonry { columns:1; }
    .photography-lightbox-inner { padding:4rem .75rem 4.5rem; }
    .photography-lightbox-nav { top:auto; bottom:1rem; transform:none; }
    .photography-lightbox-nav.is-prev { left:1rem; } .photography-lightbox-nav.is-next { right:1rem; }
    .photography-lightbox-count { bottom:2rem; }
    .photography-footer { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) {
    .photography-card-media,.photography-selection-item .photo-effect,.photography-related-media,.photography-scroll-cue i,.photography-detail-more-grid a>span { transition:none; animation:none; }
    .reveal-ready [data-reveal] { opacity:1; transform:none; transition:none; }
}

.photography-live-badge{position:absolute;top:1.15rem;right:1.15rem;z-index:2;min-height:1.8rem;display:inline-flex;align-items:center;padding:.35rem .62rem;border:1px solid color-mix(in srgb,var(--accent,#8eb6b8) 62%,transparent);color:#fff;background:rgba(4,7,8,.58);backdrop-filter:blur(10px);font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.photography-live-badge::before{content:"";width:.42rem;height:.42rem;margin-right:.42rem;border-radius:50%;background:var(--accent,#8eb6b8);box-shadow:0 0 0 .24rem color-mix(in srgb,var(--accent,#8eb6b8) 18%,transparent)}.photography-collection-card.is-live-album .photography-card-overlay{background:linear-gradient(145deg,rgba(4,6,7,.12),rgba(4,6,7,.72) 54%,rgba(4,6,7,.96))}
