.hidden{display:none!important}.photos-page{min-height:100vh;padding-top:80px;background:var(--color-black)}.photos-hero{text-align:center;padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.photos-hero h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--color-primary-red);margin-bottom:0}.photos-hero p{display:none}.filter-section{max-width:1200px;margin:0 auto var(--spacing-lg);padding:0 var(--spacing-md)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.filter-tag{background:transparent;border:2px solid var(--color-primary-red);color:var(--color-white);padding:.625rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-primary);font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.filter-tag:hover{background:#b0212a33;transform:translateY(-2px);box-shadow:0 4px 15px #b0212a4d}.filter-tag.active{background:var(--color-primary-red);border-color:var(--color-primary-red);color:var(--color-white);box-shadow:0 4px 20px #b0212a80,0 2px 10px #b0212a4d}.filter-tag.active:hover{background:var(--color-bright-red);border-color:var(--color-bright-red);box-shadow:0 6px 25px #b0212a99,0 3px 12px #b0212a66}.albums-section{max-width:1200px;margin:0 auto var(--spacing-xl);padding:0 var(--spacing-md)}.albums-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.album-card{background:var(--color-charcoal);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-smooth);border:2px solid var(--color-slate);box-shadow:0 4px 12px #b0212a4d;position:relative;overflow:hidden;display:flex;flex-direction:column}.album-cover{width:100%;aspect-ratio:1 / 1;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:var(--color-black)}.album-info{padding:var(--spacing-md);background:var(--overlay-dark);backdrop-filter:blur(10px);flex:1;display:flex;flex-direction:column;justify-content:center}.album-card:hover{transform:translateY(-8px);border-color:var(--color-primary-red);box-shadow:var(--shadow-red-lg)}.album-card.active{border-color:var(--color-bright-red);box-shadow:var(--shadow-red-md)}.album-info h3{font-family:var(--font-display);font-size:1.2rem;text-transform:uppercase;color:var(--color-primary-red);margin-bottom:var(--spacing-xs);line-height:1.2}.album-info .album-metadata{color:var(--color-light-gray);font-size:.85rem;margin-bottom:var(--spacing-xs);opacity:.9}.album-info .photo-count{color:var(--color-primary-red);font-size:.9rem;font-weight:600}.photos-section{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md) var(--spacing-xl)}.album-header{text-align:center;margin-bottom:var(--spacing-lg)}.photos-section h2{font-family:var(--font-display);font-size:2rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-red);margin-bottom:var(--spacing-sm)}.album-details{color:var(--color-light-gray);font-size:1rem;line-height:1.6}.detail-photographer{font-weight:600;margin:var(--spacing-xs) 0}.detail-venue-date{opacity:.9;margin:var(--spacing-xs) 0}.back-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:var(--overlay-medium);backdrop-filter:blur(10px);border:2px solid var(--color-primary-red);color:var(--color-white);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-smooth);margin-bottom:var(--spacing-lg)}.back-button:hover{background:var(--color-primary-red);box-shadow:var(--shadow-red-md);transform:translate(-4px)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}.photo-grid a{display:block;text-decoration:none}.photo-grid img{width:100%;aspect-ratio:1 / 1;object-fit:contain;background-color:var(--color-black);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-smooth);border:2px solid transparent;display:block}.photo-grid a:hover img{transform:scale(1.05);border-color:var(--color-primary-red);box-shadow:var(--shadow-red-md)}.loading{text-align:center;padding:var(--spacing-xl)}.loading-spinner{width:50px;height:50px;border:4px solid var(--color-slate);border-top-color:var(--color-primary-red);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin:0 auto var(--spacing-md)}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:var(--color-light-gray);font-size:1.1rem}.skeleton{background:linear-gradient(90deg,var(--color-charcoal) 0%,var(--color-slate) 50%,var(--color-charcoal) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.album-card-skeleton{background:var(--color-charcoal);border-radius:var(--radius-lg);border:2px solid var(--color-slate);overflow:hidden;min-height:400px}.album-card-skeleton .skeleton-cover{width:100%;aspect-ratio:1 / 1;margin-bottom:var(--spacing-md)}.album-card-skeleton .skeleton-text{height:20px;margin:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm)}.album-card-skeleton .skeleton-text:first-child{width:60%;height:24px}.album-card-skeleton .skeleton-text:nth-child(2){width:80%}.album-card-skeleton .skeleton-text:nth-child(3){width:70%}.empty-state{text-align:center;padding:var(--spacing-xl)}.empty-state .icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.3}.empty-state h3{font-family:var(--font-display);font-size:2rem;color:var(--color-light-gray);margin-bottom:var(--spacing-sm);text-transform:uppercase}.empty-state p{color:var(--color-light-gray);opacity:.7}.error-state{background:var(--overlay-medium);border:2px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;max-width:600px;margin:var(--spacing-xl) auto}.error-state h3{color:var(--color-error);font-size:1.5rem;margin-bottom:var(--spacing-sm)}.error-state p{color:var(--color-light-gray)}.glightbox-container{background:#000000f2!important}.glightbox-container .gslide-image img{object-fit:contain!important;max-height:90vh!important;max-width:90vw!important}.gclose,.gnext,.gprev{color:var(--color-white)!important;transition:color var(--transition-smooth)!important}.gclose:hover,.gnext:hover,.gprev:hover{color:var(--color-primary-red)!important}.gslide-description{color:var(--color-light-gray)!important;font-family:var(--font-primary)!important}@media(max-width:968px){.photo-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media(max-width:640px){.photos-page{padding-top:60px}.filter-section{padding:0 var(--spacing-sm)}.filter-bar{gap:var(--spacing-xs)}.filter-tag{padding:.5rem .75rem;font-size:.75rem;letter-spacing:.5px}.albums-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-sm)}.photos-hero h1{font-size:3rem}}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}
