.gallery-page{padding:24px 12px;margin:0 auto;max-width:1400px;min-height:80vh}@media (min-width:480px){.gallery-page{padding:32px 16px}}@media (min-width:720px){.gallery-page{padding:48px 24px}}.gallery-header{text-align:center;margin-bottom:3rem}.gallery-title{font-size:32px;font-weight:700;margin-bottom:16px;background:linear-gradient(135deg,var(--foreground) 0,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}@media (min-width:480px){.gallery-title{font-size:36px}}@media (min-width:720px){.gallery-title{font-size:42px;margin-bottom:20px}}.gallery-intro{font-size:16px;line-height:1.7;opacity:.92;color:var(--foreground);max-width:700px;margin:0 auto 12px}@media (min-width:480px){.gallery-intro{font-size:17px}}@media (min-width:720px){.gallery-intro{font-size:18px}}.gallery-count{font-size:14px;color:var(--muted);margin-top:8px}.gallery-container{width:100%}.gallery-grid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}@media (min-width:480px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (min-width:768px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:24px}}@media (min-width:1200px){.gallery-grid{grid-template-columns:repeat(4,1fr);gap:28px}}.gallery-item{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;cursor:pointer;background:var(--background-elev-1);border:1px solid color-mix(in oklab,var(--foreground) 8%,transparent);transition:all .3s ease;box-shadow:0 4px 12px color-mix(in oklab,var(--foreground) 4%,transparent)}.gallery-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px color-mix(in oklab,var(--foreground) 8%,transparent);border-color:var(--primary)}.gallery-item-image-wrapper{position:relative;width:100%;height:100%;overflow:hidden;pointer-events:none}.gallery-item-image{object-fit:cover;transition:transform .4s ease;pointer-events:none}.gallery-item:hover .gallery-item-image{transform:scale(1.05)}.lightbox{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:rgba(0,0,0,.95)!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px;animation:fadeIn .3s ease;visibility:visible!important;opacity:1!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;width:48px;height:48px;border:none;background:rgba(255,255,255,.1);color:white;font-size:32px;line-height:1;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10001;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox-close:hover{background:rgba(255,255,255,.2);transform:scale(1.1)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border:none;background:rgba(255,255,255,.1);color:white;font-size:32px;line-height:1;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10001;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox-nav:hover{background:rgba(255,255,255,.2);transform:translateY(-50%) scale(1.1)}.lightbox-nav-prev{left:20px}.lightbox-nav-next{right:20px}.lightbox-content{display:flex;flex-direction:column;gap:20px;width:auto;height:auto}.lightbox-content,.lightbox-image-wrapper{max-width:90vw;max-height:90vh;position:relative}.lightbox-image-wrapper{display:inline-block;border-radius:12px;overflow:hidden;background:transparent}.lightbox-image{display:block;width:auto;height:auto;max-width:90vw;max-height:90vh;object-fit:contain}@media (max-width:767px){.lightbox-content{max-width:95vw}.lightbox-image,.lightbox-image-wrapper{max-width:95vw;max-height:85vh}.lightbox-nav{width:44px;height:44px;font-size:24px}.lightbox-nav-prev{left:10px}.lightbox-nav-next{right:10px}.lightbox-close{width:40px;height:40px;font-size:28px;top:10px;right:10px}}