.gallery-page{padding-top:36px;padding-bottom:72px}.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0 32px}.gallery-heading h1{font-size:clamp(36px,4vw,52px);line-height:1.2;margin:12px 0 18px}.gallery-intro{color:var(--muted);font-size:16px;line-height:1.8;margin:0}.gallery-total{display:flex;align-items:baseline;gap:10px;white-space:nowrap;color:var(--muted)}.gallery-total strong{font-size:44px;color:var(--accent);font-variant-numeric:tabular-nums}.gallery-total span{font-size:13px}.gallery-tools{border-block:1px solid var(--line);padding:20px 0;display:grid;gap:20px}.gallery-albums{display:flex;flex-wrap:wrap;gap:8px}.gallery-albums a{padding:9px 13px;text-decoration:none;font-size:14px;border:1px solid var(--line);background:var(--surface)}.gallery-albums a span{margin-left:5px;opacity:.7;font-variant-numeric:tabular-nums}.gallery-albums a[aria-current]{background:var(--accent);color:#fff;border-color:var(--accent)}.gallery-search{display:flex;max-width:400px}.gallery-search input{min-width:0;flex:1;padding:10px 12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:14px}.gallery-search button{padding:10px 18px;border:1px solid var(--line);border-left:0;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.gallery-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.gallery-results{font-size:13px;color:var(--muted);margin:24px 0 16px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.gallery-card{min-width:0;border:1px solid var(--line);background:var(--surface)}.gallery-photo{display:block;position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--surface-2)}.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.gallery-photo:hover img{transform:scale(1.035)}.gallery-open{position:absolute;right:10px;bottom:10px;background:#101713d9;color:#fff;font-size:12px;padding:5px 8px;opacity:0;transition:opacity .2s}.gallery-photo:hover .gallery-open,.gallery-photo:focus-visible .gallery-open{opacity:1}.gallery-caption{padding:16px}.gallery-caption h2{font-size:16px;line-height:1.6;height:3.2em;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-caption p{display:flex;justify-content:space-between;gap:8px;font-size:11px;line-height:1.5;color:var(--muted);margin:0 0 10px}.gallery-caption p span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.gallery-article{font-size:12px;color:var(--accent);text-decoration:none}.gallery-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:36px}.gallery-pagination a{padding:9px 14px;border:1px solid var(--line);text-decoration:none;font-size:14px}.gallery-pagination [aria-current]{background:var(--accent);color:#fff;border-color:var(--accent)}.gallery-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:40px;padding-top:20px;border-top:1px solid var(--line)}.gallery-empty{padding:50px 0}.gallery-viewer{width:min(1280px,95vw);max-width:95vw;max-height:94vh;background:#111613;color:#eef0e9;border:1px solid #505a53;padding:48px 18px 18px;overflow:auto}.gallery-viewer::backdrop{background:#000d}.gallery-close{position:absolute;right:18px;top:12px;color:#eef0e9;background:transparent;border:0;font:inherit;font-size:14px;cursor:pointer}.gallery-viewer-stage{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:10px;align-items:center}.gallery-viewer-stage img{width:100%;height:min(67vh,760px);object-fit:contain;background:#0b0f0c}.gallery-prev,.gallery-next{background:#ffffff0f;border:1px solid #465048;color:#fff;height:55px;font-size:34px;cursor:pointer}.gallery-viewer-caption{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:16px 48px 0}.gallery-viewer-caption h2{font-size:17px;line-height:1.5;margin:0 0 6px}.gallery-viewer-caption p{font-size:12px;color:#aeb7af;margin:0}.gallery-viewer-links{display:flex;flex-wrap:wrap;gap:14px;flex:none;font-size:13px}.gallery-viewer-links a{color:#eef0e9}.gallery-page a:focus-visible,.gallery-page button:focus-visible,.gallery-viewer button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}body.gallery-is-open{overflow:hidden}@media(max-width:1100px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-page{padding-top:24px}.gallery-heading{align-items:start}.gallery-total{flex-direction:column;gap:0}.gallery-total strong{font-size:32px}.gallery-total span{font-size:11px}.gallery-heading h1{font-size:34px}.gallery-intro{font-size:14px}.gallery-albums a{font-size:12px;padding:8px 10px}.gallery-caption{padding:12px}.gallery-caption h2{font-size:14px}.gallery-caption p{display:block;font-size:10px}.gallery-caption p span{display:block}.gallery-open{display:none}.gallery-viewer{padding:42px 8px 12px}.gallery-viewer-stage{grid-template-columns:26px minmax(0,1fr) 26px;gap:5px}.gallery-viewer-stage img{height:52vh}.gallery-prev,.gallery-next{font-size:24px;height:42px}.gallery-viewer-caption{display:block;padding:14px 31px 0}.gallery-viewer-caption h2{font-size:15px}.gallery-viewer-links{margin-top:14px}}@media(prefers-reduced-motion:reduce){.gallery-photo img,.gallery-open{transition:none}}
.gallery-heading>div{min-width:0;flex:1}.gallery-title-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 24px;margin-top:12px}.gallery-heading .gallery-title-line h1{margin:0;flex:none}.gallery-title-line .gallery-intro{margin:0}
