.gallery-module__5Atwnq__hero{text-align:center;background:linear-gradient(135deg,#4a90e2 0%,#357abd 100%);justify-content:center;align-items:center;height:300px;margin-top:-80px;padding-top:40px;display:flex;position:relative}.gallery-module__5Atwnq__heroTitle{color:#fff;text-shadow:0 4px 10px #0000001a;z-index:10;font-size:3rem;font-weight:800;font-family:var(--font-heading)}.gallery-module__5Atwnq__waveBottom{z-index:10;width:100%;height:120px;position:absolute;bottom:0;left:0}.gallery-module__5Atwnq__waveSvg{width:100%;height:100%;display:block}.gallery-module__5Atwnq__mainContent{background:#fff;padding:10px 0 100px}.gallery-module__5Atwnq__header{text-align:center;margin-bottom:60px}.gallery-module__5Atwnq__subtitle{color:var(--color-yellow);font-weight:700;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;font-size:1.1rem;display:block}.gallery-module__5Atwnq__description{color:#666;max-width:700px;margin:0 auto;font-size:1.15rem;line-height:1.8}.gallery-module__5Atwnq__emptyState{text-align:center;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:24px;padding:100px 20px}.gallery-module__5Atwnq__emptyIcon{color:#d1d5db;width:64px;height:64px;margin:0 auto 20px}.gallery-module__5Atwnq__emptyTitle{color:#6b7280;margin-bottom:8px;font-size:1.5rem;font-weight:700}.gallery-module__5Atwnq__emptyText{color:#9ca3af}.gallery-module__5Atwnq__error{text-align:center;background:#fee2e2;border:2px solid #fca5a5;border-radius:24px;padding:100px 20px}.gallery-module__5Atwnq__error h2{color:#dc2626;margin-bottom:10px;font-size:1.5rem}.gallery-module__5Atwnq__error p{color:#991b1b}.gallery-module__5Atwnq__loading{justify-content:center;align-items:center;min-height:400px;padding:100px 20px;display:flex}.gallery-module__5Atwnq__albumsGrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:40px;display:grid}.gallery-module__5Atwnq__albumCard{background:#fff;border:1px solid #f0f0f0;border-radius:24px;flex-direction:column;height:100%;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;overflow:hidden;box-shadow:0 4px 20px #00000014}.gallery-module__5Atwnq__albumCard:hover{border-color:var(--color-primary);transform:translateY(-12px);box-shadow:0 20px 40px #00000026}.gallery-module__5Atwnq__imageContainer{aspect-ratio:4/3;background:linear-gradient(135deg,#f0f0f0 0%,#e0e0e0 100%);width:100%;position:relative;overflow:hidden}.gallery-module__5Atwnq__albumImage{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .6s}.gallery-module__5Atwnq__albumCard:hover .gallery-module__5Atwnq__albumImage{transform:scale(1.1)}.gallery-module__5Atwnq__placeholderImage{background:linear-gradient(135deg,#f5f5f5 0%,#e8e8e8 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.gallery-module__5Atwnq__placeholderIcon{color:#ccc;width:80px;height:80px}.gallery-module__5Atwnq__overlay{opacity:0;background:linear-gradient(#0000 50%,#0009 100%);transition:opacity .3s;position:absolute;inset:0}.gallery-module__5Atwnq__albumCard:hover .gallery-module__5Atwnq__overlay{opacity:1}.gallery-module__5Atwnq__cardContent{flex-direction:column;flex:1;padding:30px;display:flex}.gallery-module__5Atwnq__albumTitle{font-family:var(--font-heading);color:var(--color-dark);margin-bottom:12px;font-size:1.75rem;font-weight:800;line-height:1.3;transition:color .3s}.gallery-module__5Atwnq__albumCard:hover .gallery-module__5Atwnq__albumTitle{color:var(--color-primary)}.gallery-module__5Atwnq__albumDesc{color:#666;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin-bottom:20px;font-size:1rem;line-height:1.7;display:-webkit-box;overflow:hidden}.gallery-module__5Atwnq__albumDate{color:#999;text-transform:uppercase;letter-spacing:.5px;border-top:1px solid #f0f0f0;padding-top:20px;font-size:.85rem;font-weight:600}@media (max-width:900px){.gallery-module__5Atwnq__heroTitle{font-size:2.5rem}.gallery-module__5Atwnq__albumsGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px}}@media (max-width:600px){.gallery-module__5Atwnq__albumsGrid{grid-template-columns:1fr}}
