/*
Theme Name: Tecno em Ação
Author: Tecno em Ação
Description: Tema editorial responsivo com posts, categorias, busca e páginas nativas do WordPress.
Version: 4.1.0
Requires at least: 6.6
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tecno-em-acao
*/

/* =========================================================
   TECNO EM AÇÃO — style.css
   Paleta: azul claro / ciano, inspirada na logo do site
   ========================================================= */

:root {
  /* Cores principais (baseadas na logo) */
  --azul-fundo: #eaf5fc;      /* fundo geral do site, azul bem claro */
  --azul-fundo-2: #dcedfb;    /* fundo alternado de seções */
  --azul-escuro: #0b2545;     /* texto forte / header */
  --azul-marca: #1565c0;      /* azul principal da marca */
  --ciano: #17b6e6;           /* ciano de destaque (linkado à logo) */
  --ciano-claro: #6fe0ff;
  --branco: #ffffff;
  --cinza-texto: #4a5c72;
  --cinza-borda: #cfe3f5;

  --cor-estreia: #17b6e6;
  --cor-critica: #f5a623;
  --cor-trailer: #e63946;
  --cor-lista: #1565c0;
  --cor-bilheteria: #2ecc71;

  --fonte-display: 'Bebas Neue', sans-serif;
  --fonte-texto: 'Barlow', sans-serif;
  --fonte-texto-cond: 'Barlow Condensed', sans-serif;

  --radius: 10px;
  --sombra: 0 4px 18px rgba(11, 37, 69, 0.09);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  background: var(--azul-fundo);
  color: var(--azul-escuro);
  font-family: var(--fonte-texto);
  line-height: 1.5;
}

img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }

/* Cards agora são links de verdade (<a>) em vez de <div onclick>.
   Como <a> é inline por padrão, reforçamos aqui o display que cada
   card já usava, pra layout continuar idêntico ao anterior. */
a.hero-card,
a.trailer-card {
  display: block;
  color: inherit;
  text-decoration: none;
}
a.side-card,
a.rank-item {
  color: inherit;
  text-decoration: none;
}
.card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  height: 100%;
}

.container {
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 20px;
}

/* =========================================================
   ANÚNCIOS (placeholders) — troque pelo código do seu
   provedor de anúncios (ex: Google AdSense) quando tiver.
   ========================================================= */
.ad-slot {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: repeating-linear-gradient(
    45deg, #f1f9ff, #f1f9ff 10px, #e4f3fd 10px, #e4f3fd 20px
  );
  border: 1px dashed #9fcdec;
  border-radius: 8px;
  color: #6a90b4;
  font-family: var(--fonte-texto-cond);
  font-size: 13px;
  letter-spacing: .5px;
  margin: 24px auto;
}
.ad-slot span { opacity: .8; }
.ad-slot small { display:block; font-size: 11px; margin-top: 4px; opacity: .7; }

.ad-leaderboard { max-width: 970px; height: 90px; }
.ad-infeed {
  grid-column: 1 / -1;
  justify-self: stretch;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 100px;
  height: auto;
  padding: 20px 16px;
  margin: 24px 0;
}
.ad-infeed > div { max-width: 100%; min-width: 0; overflow-wrap: anywhere; }
.ad-infeed img, .ad-infeed video { max-width: 100%; height: auto; }

.ad-sidebar { width: 100%; height: 250px; }
.ad-footer { max-width: 970px; height: 90px; }

/* =========================================================
   HEADER
   ========================================================= */
.site-header {
  background: var(--branco);
  border-bottom: 1px solid var(--cinza-borda);
  position: sticky;
  top: 0;
  z-index: 100;
}

.header-inner {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 12px 20px;
}

/* Logo pequena e discreta, conforme solicitado */
.logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.logo img {
  height: 34px;
  width: auto;
}

.main-nav {
  display: flex;
  gap: 4px;
  flex: 1;
}
.nav-link {
  font-family: var(--fonte-texto-cond);
  font-weight: 600;
  font-size: 15px;
  color: var(--cinza-texto);
  padding: 8px 14px;
  border-radius: 6px;
  transition: background .15s, color .15s;
}
.nav-link:hover { background: var(--azul-fundo-2); color: var(--azul-marca); }
.nav-link.active { color: var(--branco); background: var(--azul-marca); }

.header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.search-box {
  display: flex;
  align-items: center;
  background: var(--azul-fundo-2);
  border-radius: 20px;
  padding: 6px 6px 6px 16px;
}
.search-box input {
  border: none;
  background: none;
  outline: none;
  font-family: var(--fonte-texto);
  font-size: 14px;
  width: 160px;
  color: var(--azul-escuro);
}
.search-btn {
  background: var(--azul-marca);
  color: var(--branco);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.social-icons {
  display: flex;
  align-items: center;
  gap: 8px;
}
.social-icon-btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--azul-fundo-2);
  color: var(--azul-marca);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .15s, color .15s;
}
.social-icon-btn svg { width: 17px; height: 17px; }
.social-icon-btn:hover { background: var(--azul-marca); color: var(--branco); }

.yt-btn {
  background: var(--ciano);
  color: var(--branco);
  font-family: var(--fonte-texto-cond);
  font-weight: 700;
  font-size: 14px;
  padding: 9px 16px;
  border-radius: 20px;
  white-space: nowrap;
}

.menu-toggle {
  display: none;
  font-size: 22px;
  color: var(--azul-escuro);
}

.mobile-nav {
  display: none;
  flex-direction: column;
  background: var(--branco);
  border-top: 1px solid var(--cinza-borda);
}
.mobile-nav a {
  padding: 14px 20px;
  border-bottom: 1px solid var(--cinza-borda);
  font-family: var(--fonte-texto-cond);
  font-weight: 600;
}
.mobile-nav.open { display: flex; }
.mobile-social {
  display: flex;
  gap: 10px;
  padding: 16px 20px;
}
.mobile-social a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--azul-fundo-2);
  color: var(--azul-marca);
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: none;
}
.mobile-social a svg { width: 18px; height: 18px; }

@media (max-width: 900px) {
  .main-nav, .header-actions { display: none; }
  .menu-toggle { display: block; }
}

/* =========================================================
   TICKER — últimas notícias
   ========================================================= */
.ticker-bar {
  background: var(--azul-escuro);
  color: var(--branco);
  display: flex;
  align-items: center;
  overflow: hidden;
}
.ticker-label {
  background: var(--ciano);
  color: var(--azul-escuro);
  font-family: var(--fonte-texto-cond);
  font-weight: 700;
  font-size: 13px;
  padding: 8px 14px;
  flex-shrink: 0;
}
.ticker-track { overflow: hidden; flex: 1; }
.ticker-inner {
  display: flex;
  white-space: nowrap;
  animation: scroll-left 30s linear infinite;
  font-size: 13px;
  padding: 8px 0;
}
@keyframes scroll-left {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* =========================================================
   HERO
   ========================================================= */
.hero { padding: 30px 0; }
.hero-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
}

.hero-card {
  background: var(--branco);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--sombra);
  cursor: pointer;
  height: 100%;
}
.hero-img-wrap { position: relative; height: 340px; }
.hero-img { width: 100%; height: 100%; object-fit: cover; }
.hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(11,37,69,.85), transparent 60%);
}
.hero-content { padding: 20px 24px 24px; }
.hero-title {
  font-family: var(--fonte-display);
  font-size: 32px;
  letter-spacing: .5px;
  line-height: 1.15;
  margin: 10px 0;
  color: var(--azul-escuro);
}
.hero-desc { color: var(--cinza-texto); font-size: 15px; margin-bottom: 14px; }
.hero-meta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  font-family: var(--fonte-texto-cond);
  font-size: 13px;
  color: var(--cinza-texto);
}

.badge {
  display: inline-block;
  font-family: var(--fonte-texto-cond);
  font-weight: 700;
  font-size: 12px;
  padding: 5px 12px;
  border-radius: 20px;
  color: var(--branco);
}
.badge-destaque { background: var(--ciano); }
.badge-critica { background: var(--cor-critica); }
.badge-trailer { background: var(--cor-trailer); }
.badge-estreia { background: var(--azul-marca); }

.hero-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.side-card {
  background: var(--branco);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--sombra);
  display: flex;
  cursor: pointer;
  flex: 1;
}
.side-card img { width: 130px; object-fit: cover; }
.side-content { padding: 14px; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.side-content h3 { font-size: 15px; line-height: 1.3; color: var(--azul-escuro); }
.side-date { font-size: 12px; color: var(--cinza-texto); }

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   CATEGORIAS (pílulas de filtro)
   ========================================================= */
.category-pills {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 10px 0 30px;
}
.pill {
  font-family: var(--fonte-texto-cond);
  font-weight: 600;
  font-size: 14px;
  padding: 9px 18px;
  border-radius: 20px;
  background: var(--branco);
  color: var(--cinza-texto);
  border: 1px solid var(--cinza-borda);
  transition: all .15s;
}
.pill:hover { border-color: var(--azul-marca); color: var(--azul-marca); }
.pill.active { background: var(--azul-marca); color: var(--branco); border-color: var(--azul-marca); }

/* =========================================================
   SEÇÕES GERAIS
   ========================================================= */
.section-header { display: flex; align-items: baseline; gap: 16px; margin-bottom: 20px; }
.section-title {
  font-family: var(--fonte-display);
  font-size: 28px;
  letter-spacing: .5px;
  color: var(--azul-escuro);
  white-space: nowrap;
}
.section-title span { color: var(--azul-marca); }
.section-line { height: 3px; flex: 1; background: linear-gradient(to right, var(--ciano), transparent); }

.news-section, .trailers-section, .ranking-section { padding: 20px 0 50px; }
.news-section { background: var(--azul-fundo-2); }

/* =========================================================
   GRADE DE NOTÍCIAS (equivalente ao loop de posts do WP)
   ========================================================= */
.news-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 22px;
}
.news-card {
  background: var(--branco);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--sombra);
  cursor: pointer;
  transition: transform .15s;
}
.news-card:hover { transform: translateY(-3px); }
.card-img-wrap { position: relative; height: 170px; }
.card-img-wrap img { width: 100%; height: 100%; object-fit: cover; }
.card-badge {
  position: absolute; top: 10px; left: 10px;
  font-family: var(--fonte-texto-cond);
  font-weight: 700; font-size: 11px;
  padding: 4px 10px; border-radius: 14px;
  color: var(--branco);
}
.card-badge.estreia { background: var(--azul-marca); }
.card-badge.critica { background: var(--cor-critica); }
.card-badge.trailer { background: var(--cor-trailer); }
.card-badge.lista { background: var(--cor-lista); }
.card-badge.bilheteria { background: var(--cor-bilheteria); }
.rating-badge {
  position: absolute; top: 10px; right: 10px;
  background: var(--azul-escuro); color: var(--ciano-claro);
  font-family: var(--fonte-display); font-size: 14px;
  padding: 4px 9px; border-radius: 6px;
}
.play-btn {
  position: absolute; inset: 0; margin: auto;
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(11,37,69,.75); color: var(--branco);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px;
}
.card-body { padding: 16px; }
.card-title { font-size: 16px; line-height: 1.35; margin-bottom: 8px; color: var(--azul-escuro); }
.card-excerpt { font-size: 13.5px; color: var(--cinza-texto); margin-bottom: 12px; }
.card-meta {
  display: flex; gap: 12px; flex-wrap: wrap;
  font-family: var(--fonte-texto-cond);
  font-size: 12.5px; color: var(--cinza-texto);
  border-top: 1px solid var(--cinza-borda); padding-top: 10px;
}

.load-more-wrap { text-align: center; margin-top: 34px; }
.load-more-btn {
  font-family: var(--fonte-texto-cond);
  font-weight: 700; font-size: 15px;
  background: var(--azul-marca); color: var(--branco);
  padding: 13px 30px; border-radius: 24px;
}
.load-more-btn:hover { background: var(--azul-escuro); }

/* =========================================================
   TRAILERS / VÍDEOS
   ========================================================= */
.trailers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 20px;
}
.trailer-card { cursor: pointer; }
.trailer-thumb { position: relative; border-radius: var(--radius); overflow: hidden; height: 150px; }
.trailer-thumb img { width: 100%; height: 100%; object-fit: cover; }
.trailer-play {
  position: absolute; inset: 0; margin: auto; width: 42px; height: 42px;
  background: rgba(255,255,255,.9); color: var(--azul-marca);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
}
.trailer-duration {
  position: absolute; bottom: 8px; right: 8px;
  background: rgba(11,37,69,.85); color: var(--branco);
  font-size: 11px; padding: 2px 7px; border-radius: 4px;
}
.trailer-info { padding-top: 10px; }
.trailer-info h4 { font-size: 14.5px; color: var(--azul-escuro); margin-bottom: 4px; }
.trailer-info span { font-size: 12px; color: var(--cinza-texto); }

/* =========================================================
   RANKING + PROMO CANAL
   ========================================================= */
.ranking-inner {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 30px;
  align-items: start;
}
.ranking-list { display: flex; flex-direction: column; gap: 14px; }
.rank-item {
  display: grid;
  grid-template-columns: 26px 44px 1fr;
  align-items: center;
  gap: 12px;
  background: var(--branco);
  border-radius: 8px;
  padding: 10px 14px;
  box-shadow: var(--sombra);
}
.rank-num { font-family: var(--fonte-display); font-size: 20px; color: var(--azul-marca); text-align: center; }
.rank-item img { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; }
.rank-info { display: flex; flex-direction: column; gap: 4px; grid-column: 3; }
.rank-info strong { font-size: 14.5px; color: var(--azul-escuro); }
.rank-info span { font-size: 12.5px; color: var(--cinza-texto); }
.canal-promo {
  background: linear-gradient(160deg, var(--azul-marca), var(--azul-escuro));
  border-radius: var(--radius);
  padding: 30px 26px;
  color: var(--branco);
  text-align: center;
}
.promo-icon { font-size: 34px; margin-bottom: 10px; }
.canal-promo h3 { font-family: var(--fonte-display); font-size: 24px; margin-bottom: 8px; }
.canal-promo p { font-size: 14px; opacity: .9; margin-bottom: 18px; }
.promo-stats { display: flex; justify-content: center; gap: 30px; margin-bottom: 20px; }
.promo-stats strong { display: block; font-family: var(--fonte-display); font-size: 22px; color: var(--ciano-claro); }
.promo-stats span { font-size: 12px; opacity: .85; }
.subscribe-btn {
  display: inline-block;
  background: var(--ciano);
  color: var(--azul-escuro);
  font-family: var(--fonte-texto-cond);
  font-weight: 700; font-size: 14px;
  padding: 12px 24px; border-radius: 22px;
}

@media (max-width: 900px) {
  .ranking-inner { grid-template-columns: 1fr; }
}

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer {
  background: var(--azul-escuro);
  color: #cfe3f5;
  padding: 50px 0 0;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.footer-brand .logo img { height: 30px; }
.footer-brand p { font-size: 13.5px; margin: 14px 0 16px; opacity: .85; max-width: 320px; }
.social-btn {
  display: inline-block;
  background: var(--ciano);
  color: var(--azul-escuro);
  font-weight: 700; font-size: 13px;
  padding: 8px 16px; border-radius: 18px;
}
.footer-links h4 { font-family: var(--fonte-texto-cond); font-size: 15px; margin-bottom: 14px; color: var(--branco); }
.footer-links li { margin-bottom: 9px; font-size: 13.5px; opacity: .85; }
.footer-links a:hover { color: var(--ciano-claro); }
.footer-bottom {
  display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px;
  padding: 18px 0; font-size: 12.5px; opacity: .7;
}

@media (max-width: 700px) {
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; text-align: center; }
}

/* =========================================================
   PÁGINA DE POST (post.html) — matéria completa
   No WordPress isso equivale ao single.php
   ========================================================= */
.post-hero {
  position: relative;
  height: 360px;
}
.post-hero img { width: 100%; height: 100%; object-fit: cover; }
.post-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(11,37,69,.9), transparent 55%);
}
.post-hero-caption {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 26px 0;
}
.post-hero-caption .container { color: var(--branco); }

.post-body {
  max-width: 720px;
  margin: 0 auto;
  padding: 34px 20px 60px;
}
.post-badge {
  font-family: var(--fonte-texto-cond);
  font-weight: 700; font-size: 12px;
  padding: 4px 12px; border-radius: 14px;
  color: var(--branco);
  display: inline-block;
  margin-bottom: 12px;
}
.post-title {
  font-family: var(--fonte-display);
  font-size: 36px;
  line-height: 1.15;
  margin-bottom: 14px;
  color: var(--branco);
}
.post-hero-caption .post-meta { color: #dceefb; }
.post-meta {
  display: flex; gap: 16px; flex-wrap: wrap;
  font-family: var(--fonte-texto-cond);
  font-size: 13.5px; color: var(--cinza-texto);
}
.post-content { margin-top: 28px; }
.post-content p { font-size: 16px; color: var(--azul-escuro); margin-bottom: 18px; line-height: 1.7; }
.post-video-embed {
  position: relative; width: 100%; height: 0; padding-bottom: 56.25%;
  background: var(--azul-escuro); border-radius: var(--radius);
  margin-bottom: 20px; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.post-video-embed .play-btn { position: static; width: 56px; height: 56px; font-size: 20px; }
.post-back-link {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--fonte-texto-cond); font-weight: 600; font-size: 14px;
  color: var(--azul-marca); margin-bottom: 20px;
}
.post-back-link:hover { color: var(--azul-escuro); }
.post-share {
  display: flex; gap: 10px; margin-top: 34px; padding-top: 24px;
  border-top: 1px solid var(--cinza-borda);
}
.post-share a {
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--azul-fundo-2); color: var(--azul-marca);
  display: flex; align-items: center; justify-content: center;
}
.post-share a svg { width: 18px; height: 18px; }
.post-share a:hover { background: var(--azul-marca); color: var(--branco); }

@media (max-width: 700px) {
  .post-hero { height: 220px; }
  .post-title { font-size: 26px; }
  .post-meta { font-size: 12px; gap: 10px; }
}

.social-links { flex-wrap: wrap; }
a:focus-visible, button:focus-visible { outline: 3px solid #2fb8ed; outline-offset: 4px; }

.page-panel{max-width:850px;margin:28px auto;background:var(--branco);padding:32px;border-radius:12px;border:1px solid #dce5ed;line-height:1.8}.page-panel p,.page-panel h2{margin-bottom:18px}.directory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:28px 0}.directory-card{display:block;background:var(--branco);border:1px solid #dce5ed;border-radius:12px;padding:24px}.directory-card:hover{border-color:var(--ciano);transform:translateY(-2px)}.directory-card h2{color:var(--azul-escuro);margin-bottom:12px}.ticker-inner a{color:inherit;display:inline-block;padding:0 12px}.ticker-inner a:hover{text-decoration:underline}.ticker-track:hover .ticker-inner,.ticker-track:focus-within .ticker-inner{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.ticker-inner{animation:none;white-space:normal;flex-wrap:wrap;gap:12px}}@media(max-width:600px){.page-panel{padding:22px}} 

/* Logos das redes e chamada do canal */
.site-footer .social-links{display:flex;flex-wrap:wrap;gap:10px}
.site-footer .social-btn{display:inline-flex;align-items:center;gap:8px}
.network-logo{width:22px;height:22px;flex-shrink:0;vertical-align:middle}
.youtube-logo{width:28px;height:20px}
.promo-icon .youtube-logo{width:64px;height:46px}

/* Corrige o padding herdado dos links do menu nos botoes sociais. */
.mobile-nav .mobile-social{display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}
.mobile-nav .mobile-social a{box-sizing:border-box;padding:0;width:44px;height:44px;min-width:44px;flex:0 0 44px;display:inline-flex;align-items:center;justify-content:center;border:0;line-height:1;color:var(--azul-marca);background:var(--azul-fundo-2)}
.mobile-nav .mobile-social a svg{display:block;width:22px;height:22px;min-width:22px;flex-shrink:0}

/* Tecno em Ação — refinamento editorial v2 */
:root { --radius: 15px; --sombra: 0 6px 24px rgba(12,38,71,.075); }
html { scroll-behavior:smooth; }
body { -webkit-font-smoothing:antialiased; }
.container { max-width: 1220px; }
.site-header { box-shadow:0 3px 18px rgba(8,30,55,.045); }
.header-inner { min-height:68px; }
.nav-link:hover, .nav-link:focus-visible { color:#087da5; }
a:focus-visible, button:focus-visible { outline:3px solid #00b9dc; outline-offset:3px; }
.hero { padding-top: 24px; }
.hero-grid { grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:18px; align-items:stretch; }
.hero-card, .side-card, .news-card, .trailer-card { border:1px solid rgba(15,62,101,.085); transition:transform .2s ease,box-shadow .2s ease; }
.hero-card:hover, .side-card:hover, .news-card:hover, .trailer-card:hover { transform:translateY(-4px); box-shadow:0 16px 35px rgba(10,35,65,.13); }
.hero-img-wrap { height:355px; }
.hero-title { font-size:clamp(29px,3.1vw,43px); line-height:1.08; }
.hero-content { padding:24px 28px 28px; }
.hero-desc { line-height:1.6; }
.side-card img { object-fit:cover; }
.section-header { margin-bottom:24px; }
.section-title { letter-spacing:.15px; }
.news-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.news-card { height:100%; }
.card-link { height:100%; display:flex; flex-direction:column; }
.card-img-wrap { height:auto; aspect-ratio:16/9; overflow:hidden; }
.card-img-wrap img, .trailer-thumb img { transition:transform .35s ease; }
.news-card:hover .card-img-wrap img, .trailer-card:hover .trailer-thumb img { transform:scale(1.045); }
.card-body { flex:1; display:flex; flex-direction:column; }
.card-title { line-height:1.3; }
.card-excerpt { line-height:1.55; }
.card-meta { margin-top:auto; }
.ad-slot { max-width:100%; box-sizing:border-box; overflow:hidden; }
.editorial-topics { padding:0 0 25px; }
.editorial-topics .container { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.editorial-topics strong { font-size:12px; text-transform:uppercase; letter-spacing:1.2px; color:#4d6378; margin-right:8px; }
.editorial-topics a { display:inline-flex; padding:9px 16px; border-radius:30px; background:#e9f5fa; border:1px solid #d2eaf4; color:#0b466a; font-size:13px; font-weight:700; text-decoration:none; transition:background .2s; }
.editorial-topics a:hover { background:#d0eef9; }
@media(max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:1fr}.hero-img-wrap{height:320px}}
@media(max-width:600px){.header-inner{min-height:58px}.hero{padding-top:14px}.hero-img-wrap{height:230px}.hero-content{padding:18px}.hero-title{font-size:29px}.news-grid{grid-template-columns:1fr;gap:16px}.editorial-topics .container{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.editorial-topics a{white-space:nowrap}.editorial-topics strong{white-space:nowrap}.section-header{margin-bottom:16px}.card-img-wrap{aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Integração WordPress e estados sem conteúdo. */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:10px;top:10px;z-index:100000;background:#fff;padding:16px;color:#0b2545}.site-header .header-inner{flex-wrap:wrap;gap:16px}.main-nav{min-width:0;flex-wrap:wrap}.tea-menu{display:flex;gap:4px;flex-wrap:wrap}.tea-menu>li{position:relative}.tea-menu a{display:block;padding:9px 10px;font-family:var(--fonte-texto-cond);font-weight:700}.tea-menu .sub-menu{display:none;position:absolute;top:100%;left:0;z-index:110;background:#fff;min-width:200px;box-shadow:var(--sombra)}.tea-menu li:hover>.sub-menu,.tea-menu li:focus-within>.sub-menu{display:block}.tea-one-hero{grid-template-columns:1fr}.tea-image-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b2545,#1565c0);color:#fff;font-family:var(--fonte-display);font-size:28px;width:100%;height:100%;min-height:100px}.side-card>.tea-image-fallback{width:130px;flex:0 0 130px;font-size:18px;padding:12px;text-align:center}.side-content{min-width:0}.side-content h2{font-size:15px;line-height:1.3}.hero-side .badge,.card-body .badge{align-self:flex-start;width:fit-content}.card-body .badge{margin-bottom:12px}.hero-title,.card-title,.post-title{overflow-wrap:anywhere}.tea-listing{padding-top:32px;padding-bottom:48px;min-height:50vh}.section-title{white-space:normal}.tea-content{font-size:18px;overflow-wrap:anywhere}.tea-content p,.tea-content ul,.tea-content ol,.tea-content h2,.tea-content h3,.tea-content figure,.tea-content blockquote{margin:0 0 22px}.tea-content ul{list-style:disc;padding-left:24px}.tea-content ol{padding-left:24px}.tea-content a,.tea-edit a,.tea-categories a,.tea-tags a,.post-navigation a,.comment-list a{color:var(--azul-marca);text-decoration:underline}.tea-content img{height:auto}.tea-content iframe,.tea-content video{max-width:100%}.tea-content table{display:block;overflow:auto;max-width:100%;border-collapse:collapse}.tea-content th,.tea-content td{padding:8px;border:1px solid var(--cinza-borda)}.tea-content blockquote{border-left:4px solid var(--ciano);padding:12px 20px;background:var(--azul-fundo)}.tea-featured{margin:24px 0}.tea-featured img{width:100%;height:auto;border-radius:var(--radius)}.tea-categories{margin-bottom:14px}.tea-empty{text-align:center;padding:60px 24px}.tea-empty h1{font-family:var(--fonte-display);font-size:38px;margin-bottom:18px}.tea-archive-description{margin-bottom:24px}.pagination,.post-navigation{margin-top:30px}.nav-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.page-numbers{display:inline-block;padding:10px 15px;background:#fff;border:1px solid var(--cinza-borda);border-radius:8px}.page-numbers.current{background:var(--azul-marca);color:white}.tea-widget{margin:24px auto;max-width:100%;overflow:hidden}.page-panel .search-box{width:100%;margin:20px 0}.page-panel .search-box input{flex:1;width:0;min-width:0;padding:8px}.page-panel .search-btn{flex-shrink:0}.post-meta{margin-top:15px;margin-bottom:24px}.post-navigation .nav-previous,.post-navigation .nav-next{max-width:48%}.comment-form input:not([type=checkbox]),.comment-form textarea{display:block;max-width:100%;padding:12px;border:1px solid var(--cinza-borda);border-radius:6px}.comment-form input[type=submit]{background:var(--azul-marca);color:white;cursor:pointer}.comment-list{padding-left:20px}.comment-list li{margin-bottom:20px}input:focus-visible{outline:3px solid #00b9dc;outline-offset:3px}.admin-bar .site-header{top:32px}
@media(max-width:1100px){.main-nav,.header-actions{display:none}.menu-toggle{display:block;margin-left:auto}.mobile-nav .search-box{margin:14px 20px}.mobile-nav .search-box input{flex:1;width:0;min-width:0;padding:8px}.mobile-nav .tea-menu{display:block}.mobile-nav .tea-menu .sub-menu{display:block;position:static;box-shadow:none;padding-left:16px}.mobile-nav .tea-menu a{display:block}.mobile-nav{max-height:calc(100dvh - 70px);overflow:auto}.admin-bar .site-header{top:32px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.container{padding-left:16px;padding-right:16px}.page-panel{margin:20px auto;padding:22px}.tea-content{font-size:17px}.post-title{font-size:29px}.header-inner{padding-top:10px;padding-bottom:10px}.side-card img,.side-card>.tea-image-fallback{width:110px;flex-basis:110px}.side-content{padding:12px}.post-navigation .nav-previous,.post-navigation .nav-next{max-width:100%;width:100%}}

.trailer-info h3{font-size:15px;line-height:1.35;margin-bottom:8px}.trailer-thumb>.tea-image-fallback{min-height:170px}

/* Publicidade opcional: sem altura fixa ou corte dos anúncios responsivos. */
.tea-ad{margin:28px auto;width:100%;min-width:0;max-width:100%;text-align:center;clear:both}.tea-ad-label{display:block;font-family:var(--fonte-texto);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#4a5c72;margin-bottom:10px}.tea-partner-banner{display:block;width:fit-content;max-width:100%;margin:auto}.tea-partner-banner img{max-width:100%;height:auto;margin:auto}.tea-ad ins{max-width:100%}
