.elementor-44 .elementor-element.elementor-element-4e289fe{--display:flex;--min-height:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-44 .elementor-element.elementor-element-55a85ee{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-44 .elementor-element.elementor-element-748aaa2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-44 .elementor-element.elementor-element-748aaa2:not(.elementor-motion-effects-element-type-background), .elementor-44 .elementor-element.elementor-element-748aaa2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-44 .elementor-element.elementor-element-9cfccb6{--display:flex;}.elementor-44 .elementor-element.elementor-element-a70acd8{--display:flex;}.elementor-44 .elementor-element.elementor-element-392cda6{--display:flex;}.elementor-44 .elementor-element.elementor-element-e7ebbad{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-44 .elementor-element.elementor-element-2a4e4c9{--display:flex;--margin-top:-83px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-44 .elementor-element.elementor-element-65730d8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-44 .elementor-element.elementor-element-775eb0e{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-44 .elementor-element.elementor-element-e6c9f4a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for shortcode, class: .elementor-element-55a85ee *//* --- CÓDIGO CSS v12 - A VERSÃO CORRETA E LIMPA --- */

/* 1. ESTRUTURA GERAL DO BANNER */
/* Define que o container do shortcode será a nossa referência de posicionamento */
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-wrapper-geral {
    position: relative;
    width: 100%;
    line-height: 0; /* Corrige possíveis espaçamentos verticais extras */
}

/* Garante que o slide ocupe a altura definida e contenha todos os elementos */
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-swiper-overlay .swiper-slide {
    position: relative;
    overflow: hidden;
    min-height: 750px; /* Defina a altura padrão do seu banner aqui */
    height: 550px;
}

/* 2. AS CAMADAS DE SOBREPOSIÇÃO */

/* CAMADA 1: A IMAGEM NO FUNDO */
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-image-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; /* A camada mais baixa */
}
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-image-background img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Garante que a imagem preencha o banner */
    object-position: center; /* Centraliza a imagem */
}

/* CAMADA 2: O DEGRADÊ POR CIMA DA IMAGEM */
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2; /* Fica entre a imagem e o texto */
    background: linear-gradient(to right, 
        rgba(0,0,0,0.9) 0%,   
        rgba(0,0,0,0.8) 30%,  
        rgba(0,0,0,0) 65%   
    );
}

/* CAMADA 3: O CONTEÚDO FINAL, POR CIMA DE TUDO */
/* Este container centraliza o texto na vertical e o alinha à esquerda */
.elementor-44 .elementor-element.elementor-element-55a85ee .btp-content-over {
    position: relative; /* Usa relative para se alinhar dentro do fluxo do slide */
    z-index: 3; /* A camada mais alta, fica na frente de tudo */
    height: 100%; /* Ocupa toda a altura para permitir o alinhamento vertical */
    
    /* Centraliza o conteúdo na vertical */
    display: flex;
    flex-direction: column;
    justify-content: center;

    /* Define o alinhamento e a largura máxima do texto */
    width: 100%;
    max-width: 1200px; /* Largura padrão de site */
    margin: 0 auto; /* Centraliza o container de 1200px na tela */
    padding: 0 5%;  /* Espaçamento das bordas */
    color: #fff;
    background: transparent;
}


/* 3. ESTILOS DO CONTEÚDO */
.elementor-44 .elementor-element.elementor-element-55a85ee .bannertopo-desc {
    color: #FFDE00;
    font-size: 14px;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: -10px;
}
.elementor-44 .elementor-element.elementor-element-55a85ee .bannertopo-title {
    color: #FFFFFF;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 30px 0;
    max-width: 55%; /* Limita o título para não invadir o lado direito (claro) */
}
.elementor-44 .elementor-element.elementor-element-55a85ee .bannertopo-btn {
    background-color: #FFDE00;
    color: #000000;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 5px;
    text-decoration: none;
}


/* 4. PAGINAÇÃO (TRAÇOS INDICADORES) */
.elementor-44 .elementor-element.elementor-element-55a85ee .swiper-pagination-bullets {
    position: absolute;
    bottom: 30px;
    /* Alinhado com a borda do conteúdo de 1200px */
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1200px;
    padding: 0 5%;
    box-sizing: border-box;
    text-align: left; /* Alinha os traços à esquerda */
    z-index: 4;
}
.elementor-44 .elementor-element.elementor-element-55a85ee .swiper-pagination-bullet {
    width: 25px;
    height: 4px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 2px;
    margin: 0 4px !important;
    opacity: 1;
}
.elementor-44 .elementor-element.elementor-element-55a85ee .swiper-pagination-bullet-active {
    background: #FFDE00;
}


/* 5. RESPONSIVIDADE */
@media (max-width: 767px) {
    .elementor-44 .elementor-element.elementor-element-55a85ee .btp-content-over {
        text-align: center;
        padding: 0 20px;
    }
    .elementor-44 .elementor-element.elementor-element-55a85ee .bannertopo-title {
        max-width: 100%;
        font-size: 34px;
    }
    .elementor-44 .elementor-element.elementor-element-55a85ee .swiper-pagination-bullets {
       justify-content: center;
       padding: 0;
       text-align: center;
    }
    .elementor-44 .elementor-element.elementor-element-55a85ee .btp-gradient-overlay {
        background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.4) 100%);
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e289fe *//* ========================================================
   BannerTopo Slider – Estilo Personalizado
   ======================================================== */

/* 1) Container do slider – full-width, altura ajustável */
.btp-swiper {
  position: relative;
  width: 100%;
  height: 80vh;              /* ajuste a altura como quiser */
  min-height: 400px;
  overflow: hidden;
}

/* 2) Cada slide ocupa todo o container e faz cross-fade */
.btp-swiper .swiper-slide {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.btp-swiper .swiper-slide-active {
  opacity: 1;
}

/* 3) Imagem de fundo – cobre todo o slide */
.btp-swiper .btp-img img {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: 0;
}

/* 4) Conteúdo (texto + botão) */
.btp-swiper .btp-content {
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translateY(-50%);
  width: 50%;                /* área de texto até metade do slide */
  display: flex;
  flex-direction: column;
  z-index: 2;
  pointer-events: none;
}

/* 5) Degradê atrás do conteúdo */
.btp-swiper .btp-content::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: linear-gradient(
    to right,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,0) 100%
  );
  z-index: 1;
  pointer-events: none;
}

/* 6) Título/descrição – fade-in lateral */
.btp-swiper .bannertopo-desc {
  writing-mode: horizontal-tb;
  white-space: normal;
  font-size: 3rem;
  line-height: 1.3;
  font-weight: 300;
  color: #fff;
  margin: 0 0 1rem;
  opacity: 0;
  transform: translateX(-20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.btp-swiper .swiper-slide-active .bannertopo-desc {
  opacity: 1;
  transform: translateX(0);
}

/* 7) Botão de chamada – sempre abaixo do texto */
.btp-swiper .bannertopo-cta {
  margin-top: 1rem;
  opacity: 0;
  transform: translateX(-20px);
  transition: opacity 0.6s ease 0.1s, transform 0.6s ease 0.1s;
}
.btp-swiper .swiper-slide-active .bannertopo-cta {
  opacity: 1;
  transform: translateX(0);
}
.btp-swiper .bannertopo-btn {
  position: relative;
  display: inline-block;
  background: #ffcc00;
  color: #000;
  text-transform: uppercase;
  font-weight: 600;
  padding: 0.75rem 2rem;
  border-radius: 50px;
  text-decoration: none;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  pointer-events: auto;
}
.btp-swiper .bannertopo-btn::after {
  content: "";
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: rgba(255,255,255,0.2);
  transform: skewX(-20deg);
  transition: left 0.6s ease;
}
.btp-swiper .bannertopo-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 20px rgba(255,204,0,0.6);
}
.btp-swiper .bannertopo-btn:hover::after {
  left: 200%;
}

/* 8) Remove as setas laterais */
.btp-swiper .swiper-button-prev,
.btp-swiper .swiper-button-next {
  display: none !important;
}

/* 9) Paginação em traços */
.btp-swiper .swiper-pagination-bullets {
  position: absolute;
  bottom: 20px !important;
  width: 100%;
  text-align: center;
  z-index: 2;
}
.btp-swiper .swiper-pagination-bullet {
  display: inline-block;
  width: 30px !important;
  height: 2px !important;
  background: rgba(255,255,255,0.5) !important;
  margin: 0 6px !important;
  border-radius: 0 !important;
  opacity: 1;
  transition: background 0.3s ease;
}
.btp-swiper .swiper-pagination-bullet-active {
  background: #ffcc00 !important;
}

/* 10) Responsividade */
@media (max-width: 1024px) {
  .btp-swiper .bannertopo-desc {
    font-size: 2.5rem;
    margin-bottom: 1rem;
  }
  .btp-swiper .btp-content {
    width: 60%;
  }
}
@media (max-width: 768px) {
  .btp-swiper {
    height: 60vh;
  }
  .btp-swiper .btp-content {
    left: 5%;
    width: 80%;
  }
  .btp-swiper .bannertopo-desc {
    font-size: 2rem;
  }
  .btp-swiper .bannertopo-btn {
    padding: 0.6rem 1.5rem;
    font-size: 0.9rem;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ca402b2 *//* --- Estilos Completos (Barra Principal + Player Lateral Fixo) --- */

/* 1. SEÇÃO PRINCIPAL */
.elementor-44 .elementor-element.elementor-element-ca402b2 { background-color: #000000 !important; padding: 0 !important;  }

/* 2. BARRA DE PLAYER PRINCIPAL */
.elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-section{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1350px;margin:0 auto;padding:15px 20px;min-height:100px}
.elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-location{display:flex;align-items:center;gap:15px}
.elementor-44 .elementor-element.elementor-element-ca402b2 .location-label{font-size:11px;font-weight:700;color:#FF8C00;letter-spacing:.5px}
.elementor-44 .elementor-element.elementor-element-ca402b2 .location-button{border:1.5px solid #444;border-radius:20px;padding:8px 15px;color:#fff;font-weight:600;font-size:14px;text-decoration:none;display:flex;align-items:center}
.elementor-44 .elementor-element.elementor-element-ca402b2 .arrow-down{border:solid #FF8C00;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin-left:10px}
.elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-player-container{flex-shrink:0}
.elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-buttons{display:flex;align-items:center;gap:15px}
.elementor-44 .elementor-element.elementor-element-ca402b2 .player-button{border-radius:20px;padding:10px 20px;font-size:12px;font-weight:800;text-decoration:none;text-transform:uppercase;transition:all .3s ease}
.elementor-44 .elementor-element.elementor-element-ca402b2 .btn-programacao{border:1.5px solid #FF8C00;color:#FF8C00}
.elementor-44 .elementor-element.elementor-element-ca402b2 .btn-programacao:hover{background-color:#FF8C00;color:#fff}
.elementor-44 .elementor-element.elementor-element-ca402b2 .btn-store{background-color:#FFD600;color:#000;border:1.5px solid #FFD600}
.elementor-44 .elementor-element.elementor-element-ca402b2 .btn-store:hover{background-color:#e9c300;border-color:#e9c300}

/* 3. ESTILOS PARA O PLAYER LATERAL FIXO */
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-sidebar {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%) translateX(100%); /* Posição inicial (escondido) */
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(5px);
    padding: 15px 12px;
    border-radius: 50px 0 0 50px;
    box-shadow: -5px 0px 20px rgba(0,0,0,0.1);
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-sidebar.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0); /* Posição final (visível) */
}
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-button {
    width: 60px; height: 60px;
    background-color: #e41e3f; /* Vermelho do player */
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; transition: transform 0.2s ease;
}
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-button:hover { transform: scale(1.1); }
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-button svg { width: 24px; height: 24px; color: white; }
.elementor-44 .elementor-element.elementor-element-ca402b2 .dot-separator { width: 4px; height: 4px; background-color: #ccc; border-radius: 50%; }
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-icon { width: 30px; height: 30px; color: #555; }
.elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-icon svg { width: 100%; height: 100%; }

/* 4. RESPONSIVIDADE */
@media (max-width: 991px) {
    .elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-section { flex-wrap: wrap; justify-content: center; gap: 20px; }
    .elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-player-container { order: -1; width: 100%; display: flex; justify-content: center; }
    .elementor-44 .elementor-element.elementor-element-ca402b2 .sticky-player-sidebar { display: none; } /* Esconde no mobile para não atrapalhar */
}
@media (max-width: 480px) {
    .elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-location,
    .elementor-44 .elementor-element.elementor-element-ca402b2 .player-bar-buttons { flex-direction: column; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-6aa5dfc *//* --- Estilos para a Seção de Promoções --- */

/* 1. TÍTULO DA SEÇÃO */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .secao-promocoes-titulo {
    text-align: center;
    font-family: "Poppins", sans-serif; /* Sugestão de fonte */
    font-size: 28px;
    font-weight: 700;
    color: #FF8C00; /* Roxo do seu exemplo */
    margin-bottom: 30px;
}

/* 2. O GRID DE CARDS */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocoes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* Grid responsivo */
    gap: 30px; /* Espaço entre os cards */
}

/* 3. O CARD INDIVIDUAL */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    aspect-ratio: 1 / 1;
    text-decoration: none;
}

/* 4. A IMAGEM DENTRO DO CARD */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card-img img,
.elementor-44 .elementor-element.elementor-element-6aa5dfc .placeholder-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
/* Placeholder para quando não houver imagem */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .placeholder-image {
    background-color: #f0f0f0;
}

/* Efeito de zoom na imagem ao passar o mouse */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card:hover .promocao-card-img img {
    transform: scale(1.05);
}

/* 5. SOBREPOSIÇÃO E TÍTULO */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card-overlay {
    position: absolute;
    bottom: 0; left: 0;
    width: 100%; height: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
    z-index: 2;
    transition: background 0.4s ease;
}
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card-title {
    position: absolute;
    bottom: 25px; left: 25px; right: 25px;
    z-index: 3;
    color: #FFFFFF;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Efeito sutil de levantar o texto no hover */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card:hover .promocao-card-title {
    transform: translateY(-10px);
}

/* 6. BOTÃO "VER MAIS" */
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocoes-ver-mais {
    text-align: center;
    margin-top: 50px;
}
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-btn-ver-mais {
    border: 2px solid #FF8C00;
    color: #FF8C00;
    border-radius: 50px;
    padding: 12px 30px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.3s ease;
}
.elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-btn-ver-mais:hover {
    background-color: #1D2327;
    border-color: #8C00FF;
    color: #FFFFFF;
}

/* 7. RESPONSIVIDADE */
@media (max-width: 767px) {
    .elementor-44 .elementor-element.elementor-element-6aa5dfc .secao-promocoes-titulo {
        font-size: 24px;
    }
    .elementor-44 .elementor-element.elementor-element-6aa5dfc .promocao-card-title {
        font-size: 22px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-d92ab45 *//* --- Estilos para a Seção de Notícias (Com Simetria Corrigida) --- */

/* 1. CONTAINER E TÍTULO */
.elementor-44 .elementor-element.elementor-element-d92ab45 .secao-noticias-wrapper { width: 100%; max-width: 1200px; margin: 40px auto; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .secao-noticias-titulo { text-align: center; font-size: 28px; font-weight: 700; color: #FF8C00; /* Laranja */ margin-bottom: 10px; position: relative; padding-bottom: 15px; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .secao-noticias-titulo::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 40px; height: 3px; background-color: #FF8C00; /* Laranja */ }

/* 2. MENU DE CATEGORIAS */
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-categorias-nav ul { list-style: none; padding: 0; margin: 20px 0 30px 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 25px; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-categorias-nav a { text-decoration: none; color: #555; font-weight: 600; font-size: 14px; text-transform: uppercase; padding-bottom: 5px; position: relative; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-categorias-nav a.active,
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-categorias-nav a:hover { color: #FF8C00; /* Laranja */ }
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-categorias-nav a.active::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background-color: #FF8C00; /* Laranja */ }

/* 3. GRID PRINCIPAL (2/3 para a esquerda, 1/3 para a direita) */
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-grid { 
    display: grid; 
    grid-template-columns: 2fr 1fr; 
    gap: 30px; 
    align-items: stretch; /* Garante que as colunas tenham a mesma altura */
}

/* 4. POST GRANDE (ESQUERDA) */
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-grande {
    position: relative; display: block;
    width: 100%;
    height: 100%; /* Ocupa toda a altura da célula do grid */
    border-radius: 8px; overflow: hidden;
    color: #fff;
}
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-img,
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-grande:hover .post-card-img img { transform: scale(1.03); }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.4) 40%, transparent 80%); }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-content { position: absolute; bottom: 25px; left: 25px; right: 25px; z-index: 2; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-categoria-label { background-color: #FF8C00; /* Laranja */ color: #fff; padding: 4px 10px; border-radius: 4px; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-card-title { font-size: 28px; font-weight: 700; line-height: 1.3; margin: 15px 0 10px 0; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-data { font-size: 13px; opacity: 0.8; }

/* 5. POSTS PEQUENOS (DIREITA) - AQUI ESTÁ A MÁGICA */
.elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-coluna-direita {
    display: flex; /* ATUALIZADO: Ativamos o Flexbox */
    flex-direction: column; /* Organiza os itens em uma coluna */
    justify-content: space-between; /* ATUALIZADO: Distribui o espaço verticalmente entre os 4 itens */
}
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-pequeno { 
    display: flex; 
    gap: 15px; 
    align-items: center; 
    text-decoration: none; 
    /* ATUALIZADO: Removemos a borda e o padding de baixo para o space-between funcionar perfeitamente */
}
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-img {
    width: 100px;
    height: 100px;
    flex-shrink: 0;
    border-radius: 8px; overflow: hidden;
}
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-img img { width: 100%; height: 100%; object-fit: cover; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-meta { margin-bottom: 5px; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-categoria-label-pequeno { color: #FF8C00; /* Laranja */ font-size: 11px; font-weight: 700; text-transform: uppercase; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .meta-sep { color: #ccc; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-title { font-size: 16px; font-weight: 600; line-height: 1.4; color: #222; margin: 0 0 8px 0; }
.elementor-44 .elementor-element.elementor-element-d92ab45 .post-item-content .post-data { color: #777; font-size: 12px; }

/* 6. RESPONSIVIDADE */
@media (max-width: 991px) {
    .elementor-44 .elementor-element.elementor-element-d92ab45 .noticias-grid { 
        grid-template-columns: 1fr; /* Coluna única em tablets e celulares */
    }
    .noticias-coluna-direita {
        gap: 20px; /* Adicionamos um gap para o modo de coluna única */
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-e7ebbad *//* CSS para a Seção de Destaque */
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-destaque-wrapper { padding: 40px 0; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .secao-sucessos-titulo-principal { text-align: center; font-size: 24px; font-weight: 700; color: #FF8C00; margin: 0 auto 25px auto; text-transform: uppercase; letter-spacing: 1px; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-destaque { position: relative; border-radius: 12px; overflow: hidden; min-height: 480px; display: flex; color: #fff; max-width: 1280px; margin: 0 auto; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-bg-img img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; background: linear-gradient(110deg, rgba(0,0,0,0.85) 20%, rgba(0,0,0,0.2) 60%, transparent 80%); }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-content { position: relative; z-index: 3; width: 100%; padding: 45px; display: flex; justify-content: space-between; align-items: flex-end; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-label { font-size: 13px; font-weight: 700; color: #FF8C00; text-transform: uppercase; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-title { font-size: 32px; font-weight: 700; margin: 8px 0 0 0; line-height: 1.3; max-width: 450px; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-botoes { display: flex; align-items: center; gap: 15px; flex-shrink: 0; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-btn { border-radius: 50px; padding: 10px 22px; text-decoration: none; font-weight: 700; font-size: 13px; display: inline-flex; align-items: center; gap: 8px; transition: all 0.3s ease; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-btn.btn-clipe { background-color: #FFD600; border: 1.5px solid #FFD600; color: #000; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-btn.btn-playlist { background-color: rgba(255,255,255,0.1); backdrop-filter: blur(5px); border: 1.5px solid rgba(255,255,255,0.4); color: #fff; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-btn svg { width: 14px; height: 14px; }
.elementor-44 .elementor-element.elementor-element-e7ebbad .lancamento-btn:hover { transform: translateY(-3px); }/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-82bd1a3 *//* CSS para a Seção das Mais Tocadas - Sem Setas */
.elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-wrapper { width: 100%; padding: 40px 0; }
.elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-header { 
    display: flex; 
    justify-content: space-between; /* Este agora fará o título ficar à esquerda */
    align-items: center; 
    margin-bottom: 25px; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-titulo { 
    font-size: 22px; 
    font-weight: 700; 
    color: #333; 
}
/* A REGRA PARA .mais-tocadas-nav FOI REMOVIDA */
.elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-grid { 
    display: grid; 
    grid-template-columns: repeat(4, 1fr); 
    gap: 20px; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-card { 
    position: relative; 
    display: flex; 
    align-items: center; 
    gap: 15px; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-number { 
    font-size: 42px; 
    font-weight: 800; 
    color: #FF8C00; 
    font-style: italic; 
    line-height: 1; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-card-link-wrapper { text-decoration: none; }
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-img-container { 
    display: block; 
    margin-bottom: 12px; 
    border-radius: 12px; 
    overflow: hidden; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-img-container img { 
    width: 100%; 
    display: block; 
    aspect-ratio: 16 / 9; 
    object-fit: cover; 
}
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-info:hover .hit-title { color: #FF8C00; }
.elementor-44 .elementor-element.elementor-element-82bd1a3 .hit-title { 
    font-size: 15px; 
    font-weight: 700; 
    line-height: 1.3; 
    color: #333; 
    margin: 0;
}

/* RESPONSIVIDADE */
@media (max-width: 991px) { 
    .elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-grid { grid-template-columns: repeat(2, 1fr); gap: 30px; } 
}
@media (max-width: 767px) { 
    .elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-grid { grid-template-columns: 1fr; } 
    .elementor-44 .elementor-element.elementor-element-82bd1a3 .mais-tocadas-header { justify-content: center; } /* Centraliza o título no mobile */
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-b870e50 *//* ====================================================
   PROGRAMA “No Ar” – Ajuste para layout Terra FM
   ==================================================== */

/* 1) Wrapper geral */
.on-air-wrapper-final {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 8rem 2rem 4rem;
  background: #fff;
  color: #333;
  gap: 4rem;
}

/* 2) “Ver Programação” */
.on-air-button-programacao {
  position: absolute;
  top: 2rem;
  right: 2rem;
  padding: 0.5rem 1.5rem;
  border: 2px solid #FF7600;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #FF7600;
  background: transparent;
  text-decoration: none;
  transition: background .3s, color .3s;
}
.on-air-button-programacao:hover {
  background: #FF7600;
  color: #fff;
}

/* 3) Avatar + círculos */
.on-air-avatar {
  position: relative;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}
.on-air-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@keyframes spinCW { to{ transform:rotate(360deg);} }
@keyframes spinCCW{ to{ transform:rotate(-360deg);} }

/* 4) Detalhes do programa */
.on-air-details-column {
  flex: 1;
  min-width: 100px;
}
.on-air-section-title {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #FF7600;
  margin: 0 0 1rem;
  position: relative;
}
.on-air-section-title::after {
  content:"";
  display:block;
  width:50px;
  height:2px;
  background:#FF7600;
  margin-top:4px;
}

/* 5) Card laranja “No Ar” */
.on-air-show-info {
  background: #FF7600;
  color: #fff;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(255,118,0,0.2);
}
.on-air-show-title-time {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.on-air-show-title {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.1;
  margin: 0;
}
.on-air-show-time {
  font-size: 1.25rem;
  font-weight: 700;
}
.on-air-show-hosts {
  font-size: 0.9rem;
  opacity: 0.85;
  margin-bottom: 1rem;
}
.on-air-show-description {
  font-size: 0.9rem;
  line-height: 1.5;
  margin: 0;
}

/* 6) Responsividade */
@media (max-width: 1024px) {
  .on-air-wrapper-final {
    flex-direction: column;
    text-align: center;
    padding: 6rem 1rem 3rem;
  }
  .on-air-avatar {
    margin-bottom: 2rem;
  }
  .on-air-button-programacao {
    position: static;
    margin-bottom: 2rem;
  }
}
@media (max-width: 768px) {
  .on-air-avatar {
    width: 240px;
    height: 240px;
  }
  .on-air-avatar::after {
    top: -4px; left: -4px;
    width: 248px; height: 248px;
    border-width: 6px;
  }
  .on-air-avatar::before {
    top: 8px; left: 8px;
    width: 224px; height: 224px;
    border-width: 4px;
  }
  .on-air-show-title {
    font-size: 1.3rem;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f9862a7 *//* =================================================================
   CSS para o Slider de Midbanner (Versão Ajustada)
   ================================================================= */

/* --- Container Principal do Slider --- */
.mid-swiper-container {
    width: 100%;
    height: 1000px; /* <-- AJUSTADO para a altura solicitada */
    position: relative;
    background-color: #333;
}

/* --- Imagem de Fundo de cada slide --- */
.midbanner-image-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.midbanner-image-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* --- Sobreposição Escura (para dar contraste ao texto) --- */
.midbanner-gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 80%); /* <-- AJUSTADO para um gradiente mais forte */
    z-index: 1;
}

/* --- Área do Conteúdo (Texto e Botão) --- */
.midbanner-content-over {
    position: relative;
    z-index: 2;
    height: 100%;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 0 10%; /* <-- AJUSTADO o espaçamento lateral */
    max-width: 50%; /* <-- AJUSTADO para dar um pouco mais de espaço ao texto */
}

/* --- Estilo do Título (Ex: "Anuncie conosco") --- */
.midbanner-title {
    font-size: 80px; /* <-- AJUSTADO para proporção com 1000px de altura */
    font-weight: bold;
    margin: 0;
    line-height: 1.15;
}

/* --- Estilo da Descrição --- */
.midbanner-desc {
    font-size: 24px; /* <-- AJUSTADO para ser legível e proporcional */
    margin-top: 20px; /* <-- AJUSTADO espaçamento entre título e descrição */
    margin-bottom: 25px; /* <-- AJUSTADO espaçamento entre descrição e botão */
    line-height: 1.6;
}

/* --- Estilo do Botão (Ex: "Anuncie agora") --- */
.midbanner-cta a.midbanner-btn {
    margin-top: 90px;
    background-color: #ffc107;
    color: #111;
    padding: 20px 50px; /* <-- AJUSTADO para um botão maior */
    text-decoration: none;
    border-radius: 8px; /* <-- AJUSTADO para um leve arredondamento */
    font-weight: bold;
    font-size: 20px; /* <-- AJUSTADO tamanho do texto do botão */
    transition: all 0.3s ease;
}

.midbanner-cta a.midbanner-btn:hover {
    background-color: #ffd54f;
    transform: scale(1.05); /* Efeito de crescimento ao passar o mouse */
}

/* --- Estilo da Paginação (os pontinhos) --- */
.mid-swiper-container .swiper-pagination-bullet {
    background: #fff;
    opacity: 0.6;
    width: 12px; /* <-- AJUSTADO */
    height: 12px; /* <-- AJUSTADO */
    margin: 0 8px !important; /* Adicionado para garantir o espaçamento */
}

.mid-swiper-container .swiper-pagination-bullet-active {
    opacity: 1;
    transform: scale(1.2);
}

/* =================================================================
   AJUSTE PARA CELULAR (Responsividade) - IMPORTANTE!
   ================================================================= */
@media (max-width: 768px) {
    .mid-swiper-container {
        height: 600px; /* Reduz a altura drasticamente no celular */
    }

    .midbanner-content-over {
        max-width: 90%; /* Permite que o texto ocupe mais espaço na tela */
        padding: 0 5%;
    }

    .midbanner-title {
        font-size: 42px; /* Reduz o título para telas menores */
    }

    .midbanner-desc {
        font-size: 16px; /* Reduz a descrição */
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .midbanner-cta a.midbanner-btn {
        font-size: 16px;
        padding: 15px 30px; /* Diminui o tamanho do botão */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-329d566 *//* --- Estilos para a Seção de Download do App --- */

/* 1. CONTAINER PRINCIPAL */
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-wrapper {
    display: flex;
    align-items: center;
    gap: 50px; /* Espaço entre as colunas */
    width: 100%;
    max-width: 1140px;
    margin: 40px auto;
    padding: 20px;
}
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-col-text,
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-col-image {
    width: 50%;
}

/* 2. CONTEÚDO DA COLUNA ESQUERDA */
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-title {
    font-family: "Poppins", sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.3;
    color: #FF8C00;
}
.elementor-44 .elementor-element.elementor-element-329d566 .title-divider {
    width: 50px;
    height: 4px;
    background-color: #FF8C00; /* Laranja */
    margin: 25px 0;
    border-radius: 2px;
}
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-description {
    font-size: 18px;
    line-height: 1.7;
    color: #666;
    max-width: 450px; /* Limita a largura do texto */
}

/* 3. QR CODE E BOTÕES DE LOJA */
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-stores {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-top: 40px;
}
.elementor-44 .elementor-element.elementor-element-329d566 .qr-code-wrapper img {
    width: 140px;
    height: 140px;
}
.elementor-44 .elementor-element.elementor-element-329d566 .store-buttons-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
}
.elementor-44 .elementor-element.elementor-element-329d566 .store-button {
    display: flex; /* Alinha ícone e texto */
    align-items: center;
    gap: 15px;
    background-color: #FFFFFF;
    border: 1.5px solid #EAEAEA;
    border-radius: 8px;
    padding: 12px 15px;
    text-decoration: none;
    transition: all 0.3s ease;
}
.elementor-44 .elementor-element.elementor-element-329d566 .store-button:hover {
    border-color: #FF8C00;
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.elementor-44 .elementor-element.elementor-element-329d566 .store-icon {
    width: 26px;
    height: 26px;
    color: #555;
}
.elementor-44 .elementor-element.elementor-element-329d566 .button-text-wrapper {
    display: flex;
    flex-direction: column;
    text-align: left;
}
.elementor-44 .elementor-element.elementor-element-329d566 .button-text-wrapper span {
    font-size: 11px;
    color: #888;
    text-transform: uppercase;
}
.elementor-44 .elementor-element.elementor-element-329d566 .button-text-wrapper strong {
    font-size: 18px;
    color: #333;
    line-height: 1.2;
}


/* 4. IMAGEM DA COLUNA DIREITA */
.elementor-44 .elementor-element.elementor-element-329d566 .app-download-col-image img {
    max-width: 100%;
    height: auto;
}


/* 5. RESPONSIVIDADE */
@media (max-width: 991px) {
    .elementor-44 .elementor-element.elementor-element-329d566 .app-download-wrapper {
        flex-direction: column-reverse; /* Imagem fica no topo */
        text-align: center;
    }
    .elementor-44 .elementor-element.elementor-element-329d566 .app-download-col-text,
    .elementor-44 .elementor-element.elementor-element-329d566 .app-download-col-image {
        width: 100%;
        max-width: 500px; /* Limita a largura no mobile */
    }
    .elementor-44 .elementor-element.elementor-element-329d566 .title-divider {
        margin: 25px auto;
    }
    .elementor-44 .elementor-element.elementor-element-329d566 .app-download-stores {
        justify-content: center;
    }
}
@media (max-width: 480px) {
     .elementor-44 .elementor-element.elementor-element-329d566 .app-download-stores {
        flex-direction: column;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e6c9f4a *//* --- Estilos para a Seção de Download do App --- */

/* Título e textos */
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-heading-title {
    font-size: 38px;
    font-weight: 700;
    line-height: 1.3;
    color: #333;
}
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-widget-divider {
    padding-bottom: 15px !important;
}
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-widget-text-editor {
    font-size: 18px;
    line-height: 1.6;
    color: #666;
}

/* Alinhamento do QR Code e Botões */
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-inner-section .elementor-column-gap-default {
    gap: 20px;
    align-items: center;
}

/* Estilo dos botões da loja */
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-button {
    width: 100%; /* Faz os dois botões terem a mesma largura */
    background-color: #FFFFFF !important;
    color: #555 !important;
    border: 1.5px solid #EAEAEA !important;
    border-radius: 8px !important;
    padding: 15px !important;
    justify-content: flex-start; /* Alinha o ícone e texto à esquerda */
}
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-button:hover {
    border-color: #FF8C00 !important;
    color: #FF8C00 !important;
}
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-button-icon {
    font-size: 24px;
    width: 24px;
}
.elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-button-text {
    flex-grow: 1; /* Garante que o texto ocupe o espaço */
    text-align: left;
    font-size: 14px;
    font-weight: 600;
}


/* Responsividade */
@media (max-width: 767px) {
    .elementor-44 .elementor-element.elementor-element-e6c9f4a > .elementor-container {
        flex-direction: column-reverse; /* Coloca a imagem no topo no celular */
    }
     .elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-heading-title {
        font-size: 28px;
        text-align: center;
    }
    .elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-divider {
        --divider-width: 20%;
        margin: 0 auto;
    }
     .elementor-44 .elementor-element.elementor-element-e6c9f4a .elementor-widget-text-editor {
        font-size: 16px;
        text-align: center;
    }
}/* End custom CSS */