.noticia-galeria {
    margin: 24px 0 8px;
}

.noticia-galeria-viewport {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    padding-bottom: 10px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
}

.noticia-galeria-viewport::-webkit-scrollbar {
    height: 10px;
}

.noticia-galeria-viewport::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #e9e9e9;
    box-shadow: inset 0 1px 3px #00000012;
}

.noticia-galeria-viewport::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #909090;
}

.noticia-galeria-viewport::-webkit-scrollbar-thumb:hover {
    background: #707070;
}

.noticia-galeria .noticia-galeria-slide {
    flex: 0 0 300px;
    margin: 0;
    scroll-snap-align: start;
}

.noticia-galeria-foto {
    display: block;
    overflow: hidden;
    border-radius: 16px;
    background: #eaf0f5;
    cursor: zoom-in;
}

.noticia-galeria .noticia-galeria-slide img {
    display: block;
    width: 100%;
    height: 200px !important;
    object-fit: cover;
    transition: transform .25s ease;
}

@media (hover: hover) {
    .noticia-galeria-foto:hover img { transform: scale(1.035); }
}

.noticia-galeria-foto:focus-visible,
.noticia-galeria-viewport:focus-visible {
    outline: 3px solid #3d6589;
    outline-offset: -3px;
}

html.noticia-galeria-aberta { overflow: hidden; }

.noticia-galeria-modal {
    box-sizing: border-box;
    width: min(960px, calc(100vw - 48px));
    max-width: none;
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    margin: auto;
    padding: 56px 36px 16px;
    overflow: auto;
    border: 0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 4px 24px #0005;
}

.noticia-galeria-modal[open] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.noticia-galeria-modal::backdrop { background: rgba(0, 0, 0, .7); }

.noticia-galeria-modal img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(100vh - 120px);
    max-height: calc(100dvh - 120px);
    object-fit: contain;
}

.noticia-galeria-modal .noticia-galeria-fechar {
    position: absolute;
    top: 15px;
    right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #ed0000;
    color: #fff;
    font: bold 24px/1 Arial, sans-serif;
    cursor: pointer;
}

.noticia-galeria-modal .noticia-galeria-fechar:hover { background: #bd0000; }

.noticia-galeria-fechar:focus-visible {
    outline: 3px solid #16202c;
    outline-offset: 3px;
}

html.contraste-alto .noticia-galeria-viewport::-webkit-scrollbar-thumb { background: #16202c; }

@supports not selector(::-webkit-scrollbar) {
    .noticia-galeria-viewport { scrollbar-color: #909090 #e9e9e9; }
    html.contraste-alto .noticia-galeria-viewport { scrollbar-color: #16202c #fff; }
}

@media (max-width: 480px) {
    .noticia-galeria-viewport { gap: 16px; }
    .noticia-galeria .noticia-galeria-slide { flex-basis: 82%; }
    .noticia-galeria .noticia-galeria-slide img { height: 180px !important; }
    .noticia-galeria-modal {
        width: calc(100vw - 24px);
        max-height: calc(100dvh - 24px);
        padding: 56px 12px 16px;
        border-radius: 16px;
    }
    .noticia-galeria-modal img { max-height: calc(100dvh - 96px); }
}

@media (prefers-reduced-motion: reduce) {
    .noticia-galeria .noticia-galeria-slide img { transition: none; }
}
