/* BEYOND News — carousel appearance and compatibility fix.
   Load AFTER style.css and any previous gallery CSS. */
#new_single_desc { min-width: 0; }
#new_single_desc .gallery.news-gallery-carousel,
#new_single_desc .news-gallery-carousel { box-sizing: border-box; width: 100%; max-width: 960px; margin: 36px auto 46px !important; min-width: 0; }

/* Current inline JS implementation: .gallery > .news-carousel-viewport > .news-carousel-track */
#new_single_desc .gallery.news-gallery-carousel { display: block !important; float: none !important; padding: 0 !important; clear: both; }
#new_single_desc .news-carousel-viewport { width: 100%; max-width: 100%; min-width: 0; overflow: hidden; padding: 4px 2px 14px; box-sizing: border-box; }
#new_single_desc .news-carousel-track { display: flex !important; flex-flow: row nowrap !important; align-items: stretch; gap: 18px; width: 100%; transition: transform .4s cubic-bezier(.2,.7,.2,1); will-change: transform; }
#new_single_desc .news-carousel-track > .gallery-item { display: block !important; float: none !important; flex-shrink: 0 !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box; }
#new_single_desc .news-carousel-track .gallery-icon { width: 100% !important; margin: 0 !important; }
#new_single_desc .news-carousel-track .gallery-icon a,
#new_single_desc .news-carousel-track .gallery-icon > img { display: block; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; background: #eaf1f6; border-radius: 12px; box-shadow: 0 3px 14px rgba(0,35,70,.1); }
#new_single_desc .news-carousel-track .gallery-icon img { display: block !important; width: 100% !important; height: 100% !important; aspect-ratio: 4 / 3; max-width: none !important; object-fit: cover !important; object-position: center; margin: 0 !important; border-radius: 12px; transition: transform .35s ease; }
#new_single_desc .news-carousel-track .gallery-icon a:hover img { transform: scale(1.045); }
#new_single_desc .news-carousel-track .gallery-caption { padding: 10px 5px 0; font-size: 13px; line-height: 1.5; text-align: center; }
#new_single_desc .news-carousel-controls { display: flex; align-items: center; justify-content: center; gap: 18px; margin: 15px auto 0; }
#new_single_desc .news-carousel-prev,
#new_single_desc .news-carousel-next { display: grid; place-items: center; border: 1px solid #dbe6ed; background: #fff; border-radius: 50%; width: 42px; height: 42px; min-width: 42px; padding: 0; font-size: 23px; line-height: 1; color: #00375d; cursor: pointer; box-shadow: 0 2px 8px rgba(0,35,70,.07); transition: background .2s,color .2s,transform .2s; }
#new_single_desc .news-carousel-prev:hover:not(:disabled),
#new_single_desc .news-carousel-next:hover:not(:disabled) { color: #fff; background: #00375d; transform: translateY(-2px); }
#new_single_desc .news-carousel-prev:disabled,
#new_single_desc .news-carousel-next:disabled { opacity: .3; cursor: default; }
#new_single_desc .news-carousel-dots { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; }
#new_single_desc .news-carousel-dot { display: block; width: 8px; height: 8px; border: 0; border-radius: 20px; padding: 0; background: #c9d5df; cursor: pointer; transition: width .2s,background .2s; }
#new_single_desc .news-carousel-dot.active { width: 22px; background: #00a6db; }

/* Compatibility with previously generated ngc carousel JS + CSS */
#new_single_desc .news-gallery-carousel > .gallery { display: flex !important; flex-flow: row nowrap !important; overflow-x: auto !important; gap: 18px; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 4px 2px 14px !important; margin: 0 !important; width: 100%; box-sizing: border-box; }
#new_single_desc .news-gallery-carousel > .gallery::-webkit-scrollbar { display: none; }
#new_single_desc .news-gallery-carousel > .gallery > .gallery-item { float: none !important; display: block !important; flex: 0 0 calc((100% - 36px)/3) !important; width: auto !important; max-width: none !important; min-width: 0; margin: 0 !important; scroll-snap-align: start; }
#new_single_desc .news-gallery-carousel > .gallery .gallery-icon a { display: block; width: 100%; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; background: #eaf1f6; }
#new_single_desc .news-gallery-carousel > .gallery .gallery-icon img { display: block !important; width: 100% !important; height: 100% !important; aspect-ratio: 4 / 3; object-fit: cover !important; }

@media (max-width: 991px) { #new_single_desc .news-gallery-carousel > .gallery > .gallery-item { flex-basis: calc((100% - 18px)/2) !important; } }
@media (max-width: 600px) { #new_single_desc .news-gallery-carousel > .gallery > .gallery-item { flex-basis: 100% !important; } #new_single_desc .news-carousel-track { gap: 12px; } }
@media (prefers-reduced-motion: reduce) { #new_single_desc .news-carousel-track, #new_single_desc .news-carousel-track img { transition: none; } }
