.visual-intro{padding:46px 0 26px}.visual-intro .system{margin:0 0 16px;font-size:11px}.visual-intro h1{font-size:24px;font-weight:700;letter-spacing:1px;margin-bottom:14px}.visual-intro>p:last-child{font-size:14px;margin:0}.visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;padding:10px 0 32px}.visual-card{min-width:0;text-align:left}.visual-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:#0a1509;border:1px solid var(--line);overflow:hidden;padding:16px}.visual-image img{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(1) sepia(1) saturate(1.5) hue-rotate(63deg);mix-blend-mode:screen;opacity:.55;transition:filter .35s ease,opacity .35s ease}.visual-card:hover img,.visual-card:focus-visible img{filter:none;mix-blend-mode:normal;opacity:1}.visual-label{display:flex;justify-content:space-between;gap:8px;padding:12px 2px;font-size:11px;letter-spacing:.5px}.viewing-image{overflow:hidden}#visual-viewer{width:min(960px,94vw);max-height:92svh;overflow:auto;background:#070d07}#visual-viewer::backdrop{background:#020602ed;backdrop-filter:blur(5px)}#visual-viewer:after{display:none}.visual-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 20px;border-bottom:1px solid var(--line);font-size:12px}.visual-toolbar button{min-height:44px;padding:0 10px}.visual-full{padding:24px;display:flex;justify-content:center;background:#050805}.visual-full img{display:block;max-width:100%;width:auto;max-height:58svh;object-fit:contain}.visual-description{padding:0 24px 20px}.visual-description h2{font-size:20px;color:var(--bright);margin:20px 0 8px}.visual-description p{font-size:14px;line-height:1.7;margin:0 0 18px}.visual-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:12px;font-size:11px}.visual-pagination button,.visual-pagination a{padding:10px 0;min-height:44px}@media(max-width:700px){.visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.visual-image{padding:10px}.visual-label{font-size:10px}.visual-intro{padding-top:30px}.visual-full{padding:14px}.visual-description{padding:0 16px 16px}.visual-pagination{font-size:10px;gap:8px}}@media(max-width:380px){.visual-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.visual-image img{transition:none}}

/* Solid green frame around the full-color artwork. */
#visual-viewer,#visual-viewer .visual-full{background:#193b20}
#visual-viewer .visual-toolbar,#visual-viewer .visual-pagination{border-color:#416b42}

/* Transparent phosphor glass, with an unobscured page outside the popup. */
#visual-viewer{background:repeating-linear-gradient(to bottom,#8de77b0d 0px,#8de77b0d 1px,transparent 1px,transparent 3px,#00000035 3px,#00000035 4px),rgba(20,65,30,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);box-shadow:0 0 25px #0005}
#visual-viewer::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
#visual-viewer .visual-full,#visual-viewer .visual-toolbar,#visual-viewer .visual-description{background:transparent}

.visual-intro h1,.photos-section h2{font-weight:700!important;font-size:24px;letter-spacing:1px;color:var(--bright)}
.photos-section{border-top:1px solid var(--line);padding-top:32px;margin-top:20px}.photos-section h2{margin:0 0 24px}

html body.archive-page.gallery-page .visual-intro h1,html body.archive-page.gallery-page .photos-section h2{font-weight:700!important}

/* Compact gallery embedded above the listener reviews. */
.about-gallery{border-top:1px solid var(--line);padding:28px 0;margin:24px 0}
.about-gallery .visual-intro{padding:0 0 18px}
.about-gallery h2{font-size:24px;font-weight:700;letter-spacing:1px;color:var(--bright);margin:0}
.about-gallery .visual-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:0 0 12px}
.about-gallery .visual-image{padding:8px}
.about-gallery .visual-label{font-size:10px;overflow-wrap:anywhere;padding:8px 0}
.about-gallery .photos-section{padding-top:22px;margin-top:12px}
.about-gallery .photos-section h2{font-size:18px;margin-bottom:18px}
@media(max-width:700px){.about-gallery .visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media(max-width:380px){.about-gallery .visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
