/* Layout Principal */
.ms-news-wrapper { 
    max-width: 1400px; 
    margin: 0 auto; 
    position: relative; 
    padding: 20px 40px 20px 40px; 
}

.swiper-container-perfect { 
    overflow: hidden; 
    position: relative; 
}

/* Forçar Mesma Altura e Espaçamento para as Bolinhas */
.swiper-wrapper { 
    display: flex !important; 
    align-items: stretch !important; 
    padding: 0px 0px 30px 0px; /* Espaçamento adicionado para as bolinhas não colarem nos cards */
}

.swiper-slide { 
    height: auto !important; 
    display: flex !important; 
}

/* Links e Cards */
.news-card-link { 
    text-decoration: none !important; 
    display: flex; 
    width: 100%; 
    color: inherit; 
}

.news-card-v2 { 
    background: #fff; 
    border-radius: 4px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.06); 
    width: 100%; 
    display: flex; 
    flex-direction: column; 
    margin: 15px 5px; 
    overflow: hidden;
    border: 1px solid #f0f0f0; 
    transition: all 0.3s ease;
}

/* Efeito Hover */
.news-card-link:hover .news-card-v2 { 
    transform: translateY(-8px) !important; 
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important; 
	border-radius: 4px !important; 
    border: 1px solid #f0f0f0 !important; 
    transition: all 0.3s ease !important;
}

/* Conteúdo Interno */
.news-thumb-v2 { 
    width: 100%; 
    height: 250px; 
    object-fit: cover; 
}

.news-content-v2 { 
    padding: 25px; 
    flex-grow: 1; 
    display: flex; 
    flex-direction: column; 
}

.news-site-source { 
    font-size: 11px; 
    text-transform: uppercase; 
    color: #999; 
    letter-spacing: 1px; 
    margin-bottom: 10px; 
    font-weight: bold; 
}

.news-content-v2 h3 {
	font-size: 22px !important;
    color: #222; 
    margin: 0 0 15px 0; 
    line-height: 1.2; 
    font-weight: 500; 
}

.news-excerpt-v2 { 
    font-size: 16px !important;
	font-weight: 400;
	line-height:22;
    color: #666; 
    margin-bottom: 20px; 
    flex-grow: 1; 
}

.news-link-v2 { 
    color: #000; 
    font-size: 16px !important;
    font-weight: 500 !important;
    font-weight:500;
    margin-top: auto; 
    align-self: flex-start; 
}

/* Navegação e Bolinhas */
.nav-btn-custom { 
    position: absolute; 
    top: 45%; 
    z-index: 10; 
    cursor: pointer; 
    opacity: 0.3; 
    transition: opacity 0.3s; 
    width: 40px; 
    height: 40px; 
}

.nav-btn-custom:hover { 
    opacity: 0.9; 
}

.nav-btn-custom svg { 
    width: 100%; 
    height: 100%; 
    stroke: #333; 
    fill: none; 
    stroke-width: 1.5px; 
}

.nav-prev-v2 { left: 0; } 
.nav-next-v2 { right: 0; }

.swiper-pagination { 
    bottom: 0 !important; 
} 

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