.page-gallery{background-color:var(--bg-primary)}.gallery-section{padding:2rem 0 5rem 0;min-height:calc(100vh - 300px);display:flex;align-items:center;position:relative;overflow:hidden}.gallery-section::before{content:'';position:absolute;top:10%;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(14,116,144,0.05) 0%,rgba(255,255,255,0) 70%);border-radius:50%;z-index:0;pointer-events:none}.gallery-container{display:flex;flex-direction:column;gap:2rem;max-width:1400px;margin:0 auto;position:relative;z-index:1}.tv-frame{position:relative;width:100%;aspect-ratio:16 / 9;max-height:70vh;margin:0 auto;background:rgba(255,255,255,0.7);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:none;border-radius:var(--radius-3xl);box-shadow:0 40px 60px -15px rgba(0,0,0,0.1),0 20px 30px -10px rgba(0,0,0,0.05),inset 0 0 0 2px rgba(255,255,255,0.5),inset 0 0 20px rgba(14,116,144,0.03);padding:1rem;transition:transform 0.5s cubic-bezier(0.2,0.8,0.2,1)}.tv-frame:hover{transform:translateY(-5px) scale(1.01)}.tv-screen{position:relative;width:100%;height:100%;border-radius:var(--radius-xl);overflow:hidden;background:#f8fafc;box-shadow:inset 0 0 20px rgba(0,0,0,0.05)}.swiper-gallery-main{width:100%;height:100%;transform-style:preserve-3d}.swiper-gallery-main .swiper-slide{position:relative;overflow:hidden}.swiper-gallery-main .swiper-slide img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 10s ease-in-out;transform:scale(1.05)}.swiper-gallery-main .swiper-slide-active img{transform:scale(1)}.slide-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.6) 0%,rgba(0,0,0,0) 50%);opacity:0;transition:opacity 0.5s ease;pointer-events:none}.swiper-gallery-main .swiper-slide-active .slide-overlay{opacity:1}.slide-caption{position:absolute;bottom:0;left:0;width:100%;padding:3rem 2rem 2rem;z-index:10;transform:translateY(20px);opacity:0;transition:all 0.6s cubic-bezier(0.2,0.8,0.2,1);transition-delay:0.2s}.swiper-gallery-main .swiper-slide-active .slide-caption{transform:translateY(0);opacity:1}.slide-caption h3{color:#ffffff;font-size:1.5rem;font-weight:700;margin-bottom:0.5rem;text-shadow:0 2px 10px rgba(0,0,0,0.3)}.slide-caption p{color:rgba(255,255,255,0.9);font-size:1rem;font-weight:400;text-shadow:0 2px 10px rgba(0,0,0,0.3)}.tv-nav-prev,.tv-nav-next{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,0.2);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.3);display:flex;align-items:center;justify-content:center;color:white;cursor:pointer;z-index:20;transition:all 0.3s ease;pointer-events:auto}.tv-nav-prev:hover,.tv-nav-next:hover{background:rgba(255,255,255,0.4);transform:translateY(-50%) scale(1.1)}.tv-nav-prev{left:1rem}.tv-nav-next{right:1rem}.tv-nav-prev::after,.tv-nav-next::after{font-family:'Inter',sans-serif;font-size:1.2rem;font-weight:bold}.tv-nav-prev::after{content:"←"}.tv-nav-next::after{content:"→"}.swiper-gallery-thumbs{width:100%;height:100px;padding:10px 0}.swiper-gallery-thumbs .swiper-slide{width:160px;height:100%;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;opacity:0.5;transition:all 0.3s ease;border:2px solid transparent}.swiper-gallery-thumbs .swiper-slide img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.swiper-gallery-thumbs .swiper-slide:hover{opacity:0.8}.swiper-gallery-thumbs .swiper-slide:hover img{transform:scale(1.1)}.swiper-gallery-thumbs .swiper-slide-thumb-active{opacity:1;border-color:var(--accent-green,#8dc63f);box-shadow:0 4px 15px rgba(141,198,63,0.2)}.swiper-gallery-thumbs .swiper-slide:active{transform:scale(0.95) !important}@media (max-width:1024px){.tv-frame{aspect-ratio:auto;height:50vh;border-radius:var(--radius-2xl);padding:0.75rem}}@media (max-width:768px){.gallery-section{padding:1rem 0 3rem 0}.tv-frame{height:40vh;border-radius:var(--radius-2xl);border:none}.tv-screen{border-radius:var(--radius-lg)}.tv-nav-prev,.tv-nav-next{display:none !important}.slide-caption{padding:20px 15px 12px}.slide-caption h3{font-size:14px !important;font-weight:700;margin-bottom:2px}.slide-caption p{font-size:11px !important;opacity:0.85}.swiper-gallery-thumbs{height:80px}.swiper-gallery-thumbs .swiper-slide{width:120px}}@media (max-width:480px){.tv-frame{height:35vh}}