/* Masonry Banner Custom Styles */
.masonry-banner-area {
    width: 100%;
    overflow: hidden;
    background: #fff;
    line-height: 0; /* Remove espaços vazios entre imagens */
}

.masonry-grid {
    display: flex !important;
    width: 100% !important;
    max-width: 1600px !important; /* Limite para não estourar a imagem */
    margin: 0 auto !important; /* Centraliza em telas grandes */
    height: 600px !important; /* Altura padrão */
    gap: 15px !important; /* Espaço entre as colunas */
    padding: 15px !important; /* Respiro lateral */
}

/* Ajuste para telas muito grandes (4K/UltraWide) */
@media (min-width: 1920px) {
    .masonry-grid {
        height: 750px !important; /* Aumenta a altura para manter a proporção */
        max-width: 1800px !important;
    }
}

.masonry-col-left, .masonry-col-right {
    flex: 1 !important;
    height: 100% !important;
}

.masonry-col-right {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important; /* Espaço entre os dois banners da direita */
}

.masonry-item {
    display: block !important;
    width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    border-radius: 12px !important; /* Cantos arredondados */
    box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important; /* Sombra um pouco mais forte */
}

.masonry-item img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

.masonry-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.masonry-item:hover img {
    transform: scale(1.04);
}

/* Banner Grande (Esquerda) */
.banner-large {
    height: 100%;
}

/* Banners Pequenos (Direita) - Metade da altura fixa */
.banner-small {
    height: 50%;
}

/* Ajuste para o Swiper no Mobile */
@media (max-width: 991px) {
    .masonry-grid {
        display: none !important;
    }
    .masonry-banner-area .hero-slider__container {
        display: block !important;
        width: 100% !important;
        height: auto !important;
    }
    .masonry-banner-area .resolutions-hero-space {
        width: 100% !important;
        aspect-ratio: 960 / 800 !important; /* Força a proporção 960x800 */
        overflow: hidden !important;
    }
    .masonry-banner-area .resolutions-hero-space img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }
    .masonry-banner-area .swiper-pagination-t01 {
        position: relative !important;
        bottom: 0 !important;
        width: auto !important;
        margin: 0 15px !important;
    }

    .swiper-controls-wrapper {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 15px 0 !important;
        background: #fff !important;
    }

    .swiper-button-prev-mobile, .swiper-button-next-mobile {
        color: #FA1818 !important;
        font-size: 18px !important;
        cursor: pointer !important;
        z-index: 10 !important;
        padding: 0 10px !important;
    }

    .swiper-pagination-bullet-active {
        background: #FA1818 !important;
    }
}
