/* ================= TOPO ================= */
html, body{
overflow-x:hidden;
}

*{
box-sizing:border-box;
}
body {
    font-family: 'Montserrat', sans-serif;
    color: #1e1e1e;
	padding:0; margin:0;
}

.container {
    width: 100%;
    max-width: 1200px;   /* limite real do site */
    margin: 0 auto;      /* centraliza */
    padding: 0 15px;     /* respiro lateral */
}

.topbar {
    background: #7b1fa2;
    color: #fff;
    font-size: 14px;
margin-top:0;
padding:10px;
}

.topbar-container {
    max-width: 1400px;
    margin: auto;
    padding: 8px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.social a {
    color: #fff;
    margin-right: 12px;
    font-size: 15px;
    transition: 0.3s;
}

.social a:hover {
    opacity: 0.7;
}

.data-hora {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Header principal */

.header-main {
    background: #ffffff;
    padding: 10px;

}

.header-container {
    max-width: 1200px;
    margin: auto;
    padding: 0 ;
    display: flex;
    justify-content: space-between;
    align-items: center;

}

.logo img {
    max-height: 100px;
}

.banner-topo img {
    max-width: 100%;
    height: auto;
    border-radius: 14px;
    transition: 0.3s ease;
}

.banner-topo img:hover {
    transform: scale(1.02);
}

/* Menu */

.menu-principal {
    background: #1da1c2;
}

.menu-container {
    max-width: 1200px;
    margin: auto;
    padding: 0 15px;

}

.menu-principal ul {
    list-style: none;
    display: flex;
    gap: 30px;
}

.menu-principal li a {
    display: block;
    padding: 15px 0;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    transition: 0.3s;
}

.menu-principal li a:hover {
    opacity: 0.8;
}

/* Responsivo */

@media (max-width: 992px) {

    .header-container {
        flex-direction: column;
        gap: 20px;
    }

    .menu-principal ul {
        flex-wrap: wrap;
        gap: 15px;
    }

    .topbar-container {
        flex-direction: column;
        gap: 5px;
        text-align: center;
    }

}


.bloco-slide {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 25px;
    margin-bottom: 60px;
}

/* ================= SLIDE NOTÍCIAS ================= */

.slide-noticias {
    position: relative;
    overflow: hidden;
}

.slide-item {
    display: none;
    position: relative;
}

.slide-item.active {
    display: block;
}

.slide-item img {
    width: 100%;
    height: 420px;
}

.slide-item:hover img {
   /* transform: scale(1.05); */
}

/* Degradê preto */
.overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(to top, rgba(0,0,0,0.85), rgba(0,0,0,0));
}

/* Título */
.slide-item h2 {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    color: #fff;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.3;
}

/* Botões */
.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5);
    border: none;
    color: #fff;
    font-size: 24px;
    padding: 10px 15px;
    cursor: pointer;
    border-radius: 50%;
    transition: 0.3s;
}

.prev:hover, .next:hover {
    background: rgba(0,0,0,0.8);
}

.prev { left: 15px; }
.next { right: 15px; }

/* ================= SLIDE BANNER ================= */

.slide-banner {
    overflow: hidden;
}

.slide-banner img {
    width: 100%;
    height: 424px;
}

.slide-banner:hover img {
  /* transform: scale(1.03); */
}

/* ================= RESPONSIVO ================= */

@media(max-width: 992px) {
    .bloco-slide {
        grid-template-columns: 1fr;
    }

    .slide-item img,
    .slide-banner img {
        height: 320px;
    }
}




.bloco-editorial {
    margin-bottom: 80px; margin-top:50px !important;
}

/* ===== PRIMEIRA LINHA ===== */

.linha-topo {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-bottom: 50px;
}

.materia-vertical {
    border-left: 8px solid;
    padding-left: 18px;
}

.materia-vertical.azul { border-color: #1da1c2; }
.materia-vertical.roxo { border-color: #7b1fa2; }

.materia-vertical a {
    text-decoration: none;
    color: inherit;
}

.thumb {
    position: relative;
    margin-bottom: 18px;
}

.thumb img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    transition: 0.5s ease;
}

.materia-vertical:hover img {
    transform: scale(1.05);
}

/* Badge */

.badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #1da1c2;
    color: #fff;
    font-size: 11px;
    padding: 4px 8px;
    font-weight: 600;
}

/* Texto */

.materia-vertical h2 {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 10px;
}

.materia-vertical p {
    font-size: 15px;
    color: #666;
}


/* ===== SEGUNDA LINHA ===== */

.linha-baixo {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.materia-horizontal a {
    display: flex;
    gap: 20px;
    text-decoration: none;
    color: inherit;
    align-items: center;
}

.materia-horizontal img {
    width: 220px;
    height: 130px;
    object-fit: cover;
    transition: 0.5s ease;
}

.materia-horizontal:hover img {
    transform: scale(1.05);
}

.materia-horizontal h3 {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}


/* ===== RESPONSIVO ===== */



@media(max-width: 992px) {

    .linha-topo {
        grid-template-columns: 1fr;
    }

    .linha-baixo {
        grid-template-columns: 1fr;
    }

    .materia-horizontal a {
        flex-direction: column;
        align-items: flex-start;
    }

    .materia-horizontal .thumb{
        width:100%;
    }

    .materia-horizontal img {
        width: 100%;
        height: auto;
    }

    .materia-horizontal h3{
        margin-top:10px;
    }

}


/* ================= CONTAINER PADRÃO ================= */

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}


/* ================= HORÓSCOPO ================= */

.horoscopo-area {
    width: 100%;
    height: 120px; /* apenas espaço reservado */

    margin-bottom: 30px;
	margin-top:30px !important; 
}


/* ================= BANNER FULL WIDTH ================= */

.banner-full {
    width: 100%;
    height: 220px;
    background: #ffffff;
    margin-bottom: 70px;
}


/* ================= VÍDEOS EM DESTAQUE ================= */

.videos-destaque {
    width: 100%;
    background: #7b1fa2;
    padding: 70px 0;
}

.titulo-bloco {
    font-family: 'Montserrat', sans-serif;
    color: #ffffff;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 45px;
}


/* GRID PRINCIPAL */

.grid-videos {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;
    align-items: stretch; /* força mesma altura */
}

/* VIDEO GRANDE */
.video-grande {
    display: flex;
}

.video-grande .video-wrapper {
    width: 100%;
}

/* COLUNA DIREITA */
.videos-laterais {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 35px;
    height: 100%; /* ocupa toda altura */
}


/* VIDEO WRAPPER RESPONSIVO 16:9 */

.video-wrapper {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 */
    overflow: hidden;
    border-radius: 12px;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* COLUNA DIREITA */

.videos-laterais {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 35px;
}


/* ================= RESPONSIVO ================= */

@media (max-width: 992px) {

    .grid-videos {
        grid-template-columns: 1fr;
    }

    .videos-laterais {
        grid-template-rows: unset;
        grid-template-columns: 1fr;
    }

}



/* ================= BANNERS ================= */

.grid-banners {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin: 60px 0;
}

.banner-box {
    height: 120px;
    background: #e5e5e5;
    border-radius: 8px;
}


/* ================= ÚLTIMAS NOTÍCIAS ================= */

.ultimas-noticias {
    margin-bottom: 80px;
}

.titulo-ultimas {
    font-size: 28px;
    font-weight: 800;
    color: #7b1fa2;
    margin-bottom: 35px;
}

.grid-ultimas {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.card-ultima a {
    text-decoration: none;
    color: inherit;
}

.card-ultima img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 10px;
    transition: 0.4s ease;
}

.card-ultima:hover img {
    transform: scale(1.05);
}

.card-ultima h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    margin-top: 6px;
}

.area-botao-carregar {
    text-align: center;
    margin-top: 40px;
}

.btn-carregar {
    background: #1da1c2;
    color: #fff;
    border: none;
    padding: 12px 28px;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

.btn-carregar:hover {
    background: #1486a1;
}


/* ================= RESPONSIVO ================= */

@media (max-width: 992px) {

    .grid-ultimas {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-banners {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 600px) {

    .grid-ultimas {
        grid-template-columns: 1fr;
    }

}


.menu{
background:#1da1c2;
font-family:Arial;
position:relative;
z-index:1000;
margin-bottom:20px;
}


.menu-list{
display:flex;
justify-content:center;
list-style:none;
margin:0;
padding:0;
}

.menu-list li{
position:relative;
}

.menu-list a{
display:block;
padding:15px 20px;
color:white;
text-decoration:none;
font-weight:bold;
}

.menu-list a:hover{
background:#1789a8;
}

/* submenu */

.submenu{
display:none;
position:absolute;
top:100%;
left:0;
background:#1788a4;
list-style:none;
padding:0;
margin:0;
min-width:180px;
z-index:1001;
}

.submenu li a{
padding:12px 16px;
}

/* desktop dropdown */

@media(min-width:901px){

.dropdown:hover .submenu{
display:block;
}

}

/* botão mobile */

.menu-toggle{
display:none;
padding:15px;
color:white;
font-weight:bold;
cursor:pointer;
}

/* mobile */

@media(max-width:900px){

.menu-toggle{
display:block;
}

.menu-list{
display:none;
flex-direction:column;
}

.menu-list.show{
display:flex;
}

.submenu{
position:relative;
}

.dropdown.open .submenu{
display:block;
}

.banner-topo img{ width:80%;}


}

/* ===== CORREÇÃO VÍDEOS MOBILE ===== */

@media (max-width: 768px) {

    .grid-videos{
        display:flex;
        flex-direction:column;
        gap:25px;
        width:100%;
    }

    .video-grande,
    .videos-laterais{
        width:80%;
        margin:0 auto;
    }

    .videos-laterais{
        display:flex;
        flex-direction:column;
        gap:25px;
    }

.video-wrapper{
    width:100%;
}

.video-wrapper iframe{
    width:100%;
}

}



.footer{
    background:#e9e9e9;
    border-top:5px solid #7a1fa2;
    font-family:Arial, Helvetica, sans-serif;
}

/* CONTAINER */
.footer-social a{
text-decoration: none;
}
.footer-container{
    max-width:1200px;
    margin:auto;
    padding:50px 20px;
    display:flex;
    justify-content:space-between;
    gap:40px;
}

/* COLUNAS */

.footer-col{
    flex:1;
}

.footer-logo{
    width:160px;
    margin-bottom:15px;
}

.footer-col h3{
    margin-bottom:20px;
    color:#333;
}

/* LINKS */

.footer-links{
    display:flex;
    gap:40px;
}

.footer-links ul{
    list-style:none;
    padding:0;
}

.footer-links li{
    margin-bottom:10px;
}

.footer-links a{
    text-decoration:none;
    color:#2f9bb3;
    font-weight:500;
}

.footer-links a:hover{
    color:#7a1fa2;
}

/* SOCIAL */

.footer-social{
    display:flex;
    gap:12px;
}

.footer-social a{
    width:40px;
    height:40px;
    background:#7a1fa2;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:8px;
    font-size:18px;
}

/* LINHA FINAL */

.footer-bottom{
    border-top:1px solid #d0d0d0;
    padding:15px 20px;
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    font-size:14px;
}

.dev{
    color:#7a1fa2;
    font-weight:bold;
}

/* BOTÃO TOPO */

.topo{
    position:fixed;
    right:20px;
    bottom:20px;
    width:45px;
    height:45px;
    background:#2f9bb3;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    text-decoration:none;
    font-size:20px;
}

/* RESPONSIVO */

@media(max-width:768px){

.footer-container{
    flex-direction:column;
    text-align:center;
}

.footer-links{
    justify-content:center;
}

.footer-bottom{
    flex-direction:column;
    gap:10px;
    text-align:center;
}

.footer-social{
    justify-content:center;
}

}