* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  color: #222;
  background: #fff;
}

a {
  color: #222;
  text-decoration: none;
}

a:hover {
  color: #e63946;
}

img {
  border: 0;
  max-width: 100%;
}

.foto img,
.fotoAlta img,
.fotoBaixa img,
.cardFoto img,
.publiImagem img,
.video img,
.videoPequeno img,
.caixaCanal img,
.capaItem img,
.guia img,
.itemFinal img,
.sabatina img,
.fotoBanner img,
.caixaMarca img {
  object-fit: cover;
}

ul {
  list-style: none;
}

.central {
  width: 96%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

.barraServicos {
  border-bottom: 1px solid #e6e6e6;
  font-size: 11px;
  background: #fff;
}

.barraServicos .central {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  min-height: 32px;
}

.servicosEsq,
.servicosDir {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.servicosEsq a,
.servicosDir a {
  color: #666;
  padding: 8px 9px;
  text-transform: uppercase;
}

.servicosEsq a {
  border-right: 1px solid #eee;
}

.botaoAssine {
  background: #f4a261;
  color: #111 !important;
  font-weight: bold;
  padding: 6px 10px !important;
  border-radius: 2px;
}

.botaoAssine:hover {
  background: #e0b100;
  color: #111 !important;
}

.cabecalho {
  padding: 14px 0 10px;
}

.cabecalhoLinha {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.logo {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.logo:hover {
  color: #e63946;
}

.logoAnos {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-right: 8px;
  line-height: 1;
}

.logoNumero {
  color: #e63946;
  font-size: 22px;
  font-weight: bold;
}

.logoTexto {
  color: #e63946;
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.logoNome {
  color: #e63946;
  font-size: 52px;
  font-weight: bold;
  letter-spacing: -3px;
  line-height: 0.8;
}

.blocoEmail {
  display: flex;
  flex-direction: row;
  align-items: center;
  max-width: 220px;
}

.botaoEmail {
  background: #2a9d8f;
  color: #fff !important;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 14px;
  margin-right: 8px;
  border-radius: 3px;
  font-size: 12px;
}

.blocoEmail p {
  font-size: 12px;
  color: #444;
  line-height: 1.3;
}

.blocoCambio {
  display: flex;
  flex-direction: column;
  font-size: 11px;
  color: #555;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
  padding: 0 16px;
}

.blocoCambio strong {
  color: #333;
}

.blocoCambio span {
  color: #e63946;
  margin-left: 4px;
}

.blocoTempo {
  display: flex;
  flex-direction: column;
  font-size: 12px;
  color: #444;
}

.blocoTempo strong {
  font-size: 13px;
}

.busca {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.busca input[type="text"] {
  width: 180px;
  height: 34px;
  border: 1px solid #ddd;
  border-right: 0;
  padding: 0 10px;
  font-size: 12px;
  border-radius: 16px 0 0 16px;
}

.busca input[type="submit"] {
  height: 34px;
  border: 1px solid #ddd;
  background: #fafafa;
  padding: 0 12px;
  border-radius: 0 16px 16px 0;
  cursor: pointer;
  font-size: 11px;
  color: #555;
}

.busca input[type="submit"]:hover {
  background: #f0f0f0;
}

.menuPrincipal {
  border-top: 1px solid #eee;
  border-bottom: 2px solid #222;
}

.menuLista {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
}

.menuLista a {
  padding: 9px 8px;
  font-size: 11px;
  font-weight: bold;
  text-transform: uppercase;
  color: #333;
}

.menuLista a:hover {
  color: #e63946;
}

.faixaPubli {
  display: flex;
  flex-direction: row;
  margin-top: 14px;
  margin-bottom: 22px;
  background: #f7f7f7;
  border: 1px solid #eee;
}

.seloPubli {
  display: block;
  text-align: center;
  font-size: 10px;
  color: #999;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 12px;
}

.publiImagem {
  flex: 1.3;
  min-height: 150px;
  overflow: hidden;
}

.publiImagem img {
  width: 100%;
  height: 168px;
  display: block;
}

.publiCards {
  display: flex;
  flex-direction: row;
  flex: 2;
}

.cardCurso {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #fff;
  margin: 8px 6px;
  border: 1px solid #eee;
}

.cardFoto {
  height: 78px;
  overflow: hidden;
}

.cardFoto img {
  width: 100%;
  height: 78px;
  display: block;
}

.cardInfo {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 6px 10px;
  text-align: center;
}

.cardInfo h3 {
  font-size: 12px;
  margin-bottom: 2px;
}

.cardInfo p {
  font-size: 10px;
  color: #777;
}

.cardPreco {
  color: #e63946;
  font-weight: bold;
  font-size: 13px;
  margin: 4px 0 6px;
}

.botaoVerde {
  background: #1d3557;
  color: #fff !important;
  font-size: 11px;
  padding: 4px 12px;
  border-radius: 12px;
  font-weight: bold;
}

.botaoVerde:hover {
  background: #152740;
  color: #fff !important;
}

.conteudo {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
}

.colunaPrincipal {
  flex: 1;
  margin-right: 22px;
}

.tituloDestaque {
  font-size: 32px;
  line-height: 1.15;
  font-weight: bold;
  margin-bottom: 6px;
}

.tituloDestaque a:hover {
  color: #e63946;
}

.linhaSub {
  font-size: 14px;
  color: #666;
  margin-bottom: 16px;
}

.tresColunas {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}

.col {
  flex: 1;
  display: flex;
  flex-direction: column;
  margin-right: 16px;
}

.colUltima {
  margin-right: 0;
}

.foto {
  width: 100%;
  height: 128px;
  overflow: hidden;
  background: #ddd;
  margin-bottom: 8px;
}

.foto img {
  width: 100%;
  height: 128px;
  display: block;
}

.fotoAlta {
  height: 150px;
}

.fotoAlta img {
  height: 150px;
}

.fotoBaixa {
  height: 110px;
}

.fotoBaixa img {
  height: 110px;
}

.titulo {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 8px;
}

.tituloMedio {
  font-size: 15px;
}

.lista {
  margin-bottom: 16px;
}

.lista li {
  position: relative;
  padding-left: 12px;
  margin-bottom: 8px;
  line-height: 1.35;
  font-size: 13px;
}

.lista li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 5px;
  height: 5px;
  background: #2a9d8f;
}

.lista a {
  color: #333;
}

.videoPequeno {
  position: relative;
  margin-bottom: 8px;
}

.videoPequeno img {
  width: 100%;
  height: 110px;
  display: block;
}

.marcaCanal {
  position: absolute;
  left: 8px;
  top: 8px;
  background: #fff;
  color: #e63946;
  font-weight: bold;
  font-size: 11px;
  padding: 2px 6px;
}

.botaoPlay {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  margin-left: -10px;
  margin-top: -12px;
  border-style: solid;
  border-width: 12px 0 12px 20px;
  border-color: transparent transparent transparent #fff;
}

.colunaLateral {
  width: 340px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}

.caixaVivo {
  background: #111;
  color: #fff;
  margin-bottom: 14px;
}

.topoVivo {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  background: #e63946;
}

.topoVivo strong {
  font-size: 13px;
}

.pontoVivo {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-size: 11px;
  font-weight: bold;
}

.pontoVivo span {
  width: 8px;
  height: 8px;
  background: #fff;
  border-radius: 50%;
  margin-right: 6px;
}

.video {
  position: relative;
}

.video img {
  width: 100%;
  height: 190px;
  display: block;
}

.legendaVideo {
  position: absolute;
  left: 10px;
  bottom: 8px;
  color: #fff;
  font-size: 13px;
}

.caixaFlash {
  margin-bottom: 14px;
}

.tituloFlash {
  color: #e63946;
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 6px;
  letter-spacing: 1px;
}

.caixaFlash .video img {
  height: 210px;
}

.faixaFlash {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 18px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.3;
  padding: 0 12px;
}

.caixaMarca {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  border: 1px solid #eee;
  padding: 8px;
  margin-bottom: 10px;
}

.caixaMarca img {
  width: 120px;
  height: 90px;
  margin-right: 10px;
  display: block;
}

.caixaMarca p {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.35;
}

.seloMarca {
  display: inline-block;
  margin-top: 8px;
  font-size: 9px;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 1px solid #bbb;
  color: #666;
  padding: 2px 5px;
}

.faixaColunistas {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 12px 0;
  margin: 8px auto 22px;
}

.colunista {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 24%;
}

.fotoColunista {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  margin-right: 10px;
}

.textoColunista strong {
  display: block;
  font-size: 13px;
}

.textoColunista p {
  font-size: 12px;
  color: #555;
  line-height: 1.3;
}

.gradeBaixo {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
}

.bloco {
  display: flex;
  flex-direction: column;
  width: 23.5%;
}

.blocoLargo {
  width: 24.5%;
}

.bloco .foto {
  height: 160px;
}

.bloco .foto img {
  height: 160px;
}

.caixaCanal {
  background: #111;
  color: #fff;
  padding: 12px;
  margin-bottom: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.caixaCanal img {
  width: 100%;
  height: 210px;
  display: block;
  margin-bottom: 8px;
}

.caixaCanal h3 {
  font-size: 18px;
  margin-bottom: 6px;
}

.caixaCanal p {
  font-size: 12px;
  color: #ddd;
}

.capaPrime {
  display: flex;
  flex-direction: row;
  background: #1a1a1a;
  color: #fff;
  margin-bottom: 12px;
  padding: 10px;
}

.capaItem {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 4px;
}

.capaItem img {
  width: 100%;
  height: 150px;
  display: block;
  margin-bottom: 6px;
}

.capaItem span {
  font-size: 10px;
  text-align: center;
  line-height: 1.3;
}

.topoPrime {
  text-align: center;
  font-size: 11px;
  letter-spacing: 1px;
  margin-bottom: 6px;
  color: #f4a261;
  font-weight: bold;
}

.listaCursos {
  display: flex;
  flex-direction: column;
  margin-bottom: 14px;
}

.topoCursos {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  border-bottom: 1px solid #eee;
  padding-bottom: 6px;
}

.topoCursos strong {
  font-size: 16px;
}

.topoCursos a {
  font-size: 12px;
  color: #2a9d8f;
}

.itemCurso {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px solid #f2f2f2;
}

.itemCurso img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin-right: 8px;
}

.itemCurso p {
  flex: 1;
  font-size: 13px;
}

.botaoComprar {
  border: 1px solid #2a9d8f;
  color: #2a9d8f;
  font-size: 10px;
  padding: 4px 10px;
  background: #fff;
  text-transform: uppercase;
}

.botaoComprar:hover {
  background: #2a9d8f;
  color: #fff;
}

.guia {
  border: 1px solid #eee;
  margin-bottom: 12px;
}

.guia img {
  width: 100%;
  height: 120px;
  display: block;
}

.guia p {
  padding: 8px;
  font-weight: bold;
  font-size: 14px;
}

.caixaSena {
  border: 1px solid #eee;
  padding: 10px;
  margin-bottom: 12px;
  text-align: center;
}

.caixaSena h3 {
  font-size: 12px;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.bolas {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}

.bola {
  width: 28px;
  height: 28px;
  border: 1px solid #ccc;
  border-radius: 50%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin: 3px;
  font-size: 11px;
  font-weight: bold;
}

.caixaTv {
  background: #111;
  color: #fff;
  padding: 16px 10px;
  text-align: center;
  margin-bottom: 12px;
}

.caixaTv strong {
  color: #e63946;
  font-size: 22px;
}

.caixaTv p {
  margin-top: 6px;
  font-size: 13px;
}

.noticiaTexto {
  margin-bottom: 16px;
}

.noticiaTexto h3 {
  font-size: 16px;
  margin-bottom: 6px;
}

.sabatina {
  background: #111;
  color: #fff;
  padding: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 12px;
}

.sabatina span {
  color: #e63946;
  font-size: 11px;
  font-weight: bold;
}

.sabatina h3 {
  font-size: 22px;
  margin: 6px 0;
}

.sabatina img {
  width: 100%;
  height: 140px;
  display: block;
  margin: 8px 0;
}

.botaoAmarelo {
  background: #f4a261;
  color: #111 !important;
  font-weight: bold;
  padding: 8px 18px;
  font-size: 13px;
}

.botaoAmarelo:hover {
  background: #e0b100;
  color: #111 !important;
}

.linhaFinal {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
}

.itemFinal {
  width: 18.5%;
  display: flex;
  flex-direction: column;
}

.itemFinal img {
  width: 100%;
  height: 110px;
  display: block;
  margin-bottom: 8px;
}

.itemFinal h3 {
  font-size: 14px;
  line-height: 1.3;
}

.itemFinal p {
  font-size: 12px;
  color: #555;
  margin-top: 4px;
}

.itemFinalLargo {
  width: 22%;
}

.bannerVerde {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  background: #2a9d8f;
  color: #fff;
  padding: 18px 28px;
  margin-bottom: 0;
}

.bannerVerde .central {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.textoBanner h2 {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.15;
  font-style: italic;
}

.fotoBanner {
  width: 280px;
  height: 120px;
  overflow: hidden;
  margin: 0 20px;
}

.fotoBanner img {
  width: 100%;
  height: 120px;
  display: block;
}

.caixaAluguel {
  background: #f4a261;
  color: #111;
  padding: 12px 18px;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  border-radius: 8px;
}

.marcaBanner {
  text-align: right;
}

.marcaBanner strong {
  font-size: 22px;
}

.marcaBanner p {
  font-size: 12px;
  font-style: italic;
}

.rodape {
  background: #f5f5f5;
  border-top: 1px solid #ddd;
  padding: 18px 0 28px;
  font-size: 12px;
  color: #666;
}

.rodapeNav {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.rodapeNav a {
  color: #555;
  margin-right: 14px;
  margin-bottom: 6px;
}

.rodape p {
  line-height: 1.5;
}

@media (max-width: 900px) {
  .blocoCambio,
  .blocoTempo {
    display: none;
  }

  .cabecalhoLinha {
    flex-wrap: wrap;
  }

  .logoNome {
    font-size: 40px;
  }

  .conteudo,
  .tresColunas,
  .gradeBaixo,
  .linhaFinal,
  .faixaPubli,
  .faixaColunistas,
  .bannerVerde .central {
    flex-direction: column;
  }

  .colunaPrincipal,
  .colunaLateral,
  .col,
  .bloco,
  .blocoLargo,
  .itemFinal,
  .itemFinalLargo,
  .colunista {
    width: 100%;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .colunaLateral {
    flex-shrink: 1;
  }

  .publiCards {
    flex-wrap: wrap;
  }

  .cardCurso {
    width: 46%;
    flex: none;
  }

  .fotoBanner {
    width: 100%;
    margin: 12px 0;
  }

  .tituloDestaque {
    font-size: 24px;
  }

  .busca input[type="text"] {
    width: 140px;
  }
}

@media (max-width: 600px) {
  .servicosEsq {
    display: none;
  }

  .blocoEmail {
    margin: 8px 0;
    max-width: 100%;
  }

  .menuLista a {
    padding: 8px 6px;
    font-size: 10px;
  }

  .cardCurso {
    width: 100%;
  }

  .capaPrime {
    flex-direction: column;
  }
}