:root{--vermelho:#c20c0c;--vermelho-escuro:#9e0a0a;--texto:#111;--cinza:#666;--linha:#e3e3e3;--fundo:#f4f4f4;--link:#0a5dc2;--max:1180px}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Arial,Helvetica,sans-serif;color:var(--texto);background:#fff;line-height:1.6}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}

/* ---------- BARRA SUPERIOR ---------- */
.topo{background:var(--vermelho);color:#fff;position:sticky;top:0;z-index:50}
.topo-in{position:relative;max-width:var(--max);margin:0 auto;display:flex;align-items:center;gap:18px;height:58px;padding:0 16px}
.menu-btn{display:none;align-items:center;background:none;border:0;color:#fff;cursor:pointer;padding:4px 2px}
.menu-btn .barras{display:inline-block;width:22px}.menu-btn .barras span{display:block;height:2px;background:#fff;margin:4px 0;border-radius:2px}
.marca{font-family:"Open Sans",Arial,sans-serif;font-weight:700;font-size:18px;letter-spacing:.2px;color:#fff;display:inline-flex;align-items:center}
.marca:hover{text-decoration:none}
.marca b{background:#fff;color:var(--vermelho);padding:0 6px;border-radius:4px;font-weight:800;margin-right:3px}
.secao-topo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 56px;pointer-events:none;z-index:1;font-family:"Open Sans",Arial,sans-serif;font-size:26px;letter-spacing:3px;font-weight:300;text-transform:uppercase}
.secao-tit{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.topo-in>.marca,.topo-in>.menu-btn{position:relative;z-index:2}
.center-logo .marca{pointer-events:auto}
.center-logo{text-transform:none;letter-spacing:0}
.center-logo .marca{font-size:23px}
.acoes{display:flex;align-items:center;gap:10px}
.busca{display:flex;align-items:center;gap:8px;background:var(--vermelho-escuro);border-radius:20px;padding:0 14px;height:38px;width:210px}
.busca-ic{color:#fff;opacity:.9;flex:0 0 auto;display:block}
.busca input{flex:1;min-width:0;background:none;border:0;outline:none;color:#fff;font-size:13px;font-weight:bold}
.busca input::placeholder{color:rgba(255,255,255,.8);text-transform:uppercase;font-weight:bold}
.btn-entrar{background:#fff;color:var(--vermelho);border:0;border-radius:20px;padding:9px 16px;font-size:13px;font-weight:bold;cursor:pointer}
.btn-entrar:hover{text-decoration:none}

/* ---------- NAV DE SECOES ---------- */
.nav2{background:#fff;border-bottom:3px solid var(--vermelho);position:sticky;top:58px;z-index:40}
.nav2-in{max-width:var(--max);margin:0 auto;display:flex;align-items:stretch;gap:2px;overflow:visible;padding:0 8px}
.nav2-in::-webkit-scrollbar{display:none}
.nav2-in a{color:#222;font-size:13px;font-weight:bold;padding:12px;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-3px}
.nav2-in a:hover{color:var(--vermelho);text-decoration:none;border-bottom-color:var(--vermelho)}
.nav2-in a.ativo{color:var(--vermelho);border-bottom-color:var(--vermelho)}

/* ---------- MENU LATERAL ---------- */
.drawer{position:fixed;inset:0 auto 0 0;width:300px;max-width:85vw;background:#fff;transform:translateX(-100%);transition:.25s;z-index:70;box-shadow:2px 0 14px rgba(0,0,0,.2);padding:20px;overflow:auto}
.drawer.aberto{transform:none}.drawer h4{color:var(--vermelho);margin:18px 0 6px;font-size:13px;letter-spacing:1px}
.drawer a{display:block;padding:9px 0;color:#222;border-bottom:1px solid var(--linha);font-size:15px}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.25s;z-index:60}
.overlay.aberto{opacity:1;visibility:visible}
.fechar-x{background:none;border:0;font-size:26px;cursor:pointer;float:right;line-height:1;color:#444}

/* ---------- LAYOUT ---------- */
.wrap{max-width:var(--max);margin:18px auto;padding:0 16px;display:flex;gap:30px}
.artigo{background:#fff;flex:1;min-width:0;padding:8px 0}
.lateral{width:300px;flex-shrink:0}

/* ---------- ARTIGO ---------- */
.crumb{font-size:12px;color:var(--cinza);margin-bottom:14px}.crumb a{color:var(--vermelho);font-weight:bold}
h1.titulo{font-size:34px;line-height:1.2;margin:0 0 14px;font-weight:800}
.subtitulo{font-size:19px;color:#444;font-weight:400;margin:0 0 18px;line-height:1.4}
.assinatura{font-size:13px;color:var(--cinza);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);padding:10px 0;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:6px 16px}
.assinatura b{color:#222}
figure{margin:0 0 8px}figure img{width:100%;height:auto;display:block;border-radius:4px}
.video-embed{position:relative;width:100%;height:0;padding-bottom:56.25%;margin:6px 0 8px;background:#000;border-radius:4px;overflow:hidden}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ph-img{background:#dcdcdc;color:#888;display:flex;align-items:center;justify-content:center;height:360px;font-size:13px;text-align:center}
figcaption{font-size:12px;color:var(--cinza);padding:8px 2px 22px}
.artigo p{font-size:18px;margin:0 0 20px}.artigo h2{font-size:23px;margin:30px 0 12px}
.artigo blockquote{border-left:4px solid var(--vermelho);margin:24px 0;padding:6px 0 6px 18px;font-size:21px;font-style:italic;color:#333}
.lista-result{background:#fafafa;border:1px solid var(--linha);padding:18px 22px;margin:24px 0}.lista-result li{font-size:17px;margin:8px 0}
/* negrito = preto (G1). Link interno pra outra materia = vermelho. Nunca palavra vermelha solta. */
.artigo strong,.artigo b{color:#111;font-weight:800}
.artigo p a,.artigo li a{color:var(--link)}
.artigo a.ref{color:var(--vermelho);font-weight:bold}.artigo a.ref:hover{text-decoration:underline}

/* ---------- CTA ---------- */
.cta{background:#f7f7f7;border:1px solid var(--linha);border-left:4px solid var(--vermelho);border-radius:4px;padding:20px 22px;margin:28px 0}
.cta h3{margin:0 0 6px;font-size:20px}.cta p{font-size:15px;color:#555;margin:0 0 14px}
.cta a{display:inline-block;background:var(--vermelho);color:#fff;font-weight:bold;font-size:15px;padding:11px 22px;border-radius:4px}
.cta a:hover{background:var(--vermelho-escuro);text-decoration:none}

/* ---------- LATERAL ---------- */
.box{margin-bottom:28px}
.box-tit{color:#111;font-size:18px;font-weight:800;padding:0 0 8px;margin-bottom:4px;border-bottom:2px solid var(--vermelho)}
.maislidas a{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--linha);color:#222;align-items:flex-start}
.maislidas a:hover{text-decoration:none}.maislidas a:hover span:last-child{color:var(--vermelho)}
.maislidas .n{color:#c9c9c9;font-weight:800;font-size:26px;line-height:1;flex:0 0 26px}
.maislidas span:last-child{font-size:15px;font-weight:bold;color:#111}

/* ---------- VEJA MAIS ---------- */
.vejamais{max-width:var(--max);margin:10px auto 0;padding:0 16px}
.vejamais .vm-tit{border-left:5px solid var(--vermelho);padding-left:10px;font-size:20px;font-weight:800;margin:18px 0 16px}
.vm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.vm-card{display:block;color:#111}.vm-card:hover{text-decoration:none}.vm-card:hover .vm-tx{color:var(--vermelho)}
.vm-card img,.vm-card .ph{width:100%;height:150px;object-fit:cover;border-radius:4px}
.vm-card .vm-tag{color:var(--vermelho);font-size:11px;font-weight:bold;letter-spacing:.5px;text-transform:uppercase;padding:10px 0 0}
.vm-card .vm-tx{font-size:15px;font-weight:bold;line-height:1.3;padding:4px 0 14px}

/* ---------- ANUNCIOS ---------- */
.ad-slot{margin:22px auto;text-align:center;max-width:100%;overflow:hidden}
.ad-slot .ad-label{display:block;font-size:10px;letter-spacing:1px;color:#b3b3b3;text-transform:uppercase;margin-bottom:4px}
.ad-slot .ad-rect{background:#f6f6f6;border:1px dashed #d2d2d2;min-height:90px;display:flex;align-items:center;justify-content:center;color:#b3b3b3;font-size:11px;font-weight:bold;letter-spacing:.5px}
.ad-slot img{max-width:100%;height:auto;display:inline-block;margin:0 auto}
.ad-real{display:inline-block;line-height:0}
.ad-real img{max-width:100%;height:auto;display:block;border-radius:4px}
.ad-inline{float:right;width:300px;max-width:100%;margin:4px 0 14px 20px;text-align:center}
@media(max-width:600px){.ad-inline{float:none;width:100%;margin:14px 0}}

/* ---------- RODAPE ---------- */
.rodape{background:var(--vermelho);color:#fff;margin-top:36px;font-size:13px}
.rodape-in{max-width:var(--max);margin:0 auto;padding:0 16px}.rodape a{color:#fff;opacity:.92}.rodape a:hover{opacity:1}
.rodape-top{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.28)}
.rodape-marca{font-family:"Open Sans",Arial,sans-serif;font-weight:800;font-size:20px}
.rodape-marca b{background:#fff;color:var(--vermelho);padding:0 6px;border-radius:4px}
.rodape-marca small{font-weight:400;font-size:13px;margin-left:8px;opacity:.9}
.rodape-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:16px 0 26px;font-size:12px}
.rodape-links{display:flex;flex-wrap:wrap;gap:16px}

/* ---------- ADICOES (home, categorias, blocos) ---------- */
.ph{background:repeating-linear-gradient(135deg,#e9e2d3,#e9e2d3 14px,#efe9da 14px,#efe9da 28px);display:flex;align-items:center;justify-content:center;color:#b3a988;font-size:11px;font-weight:bold;letter-spacing:1px;border-radius:4px}
.home-hero{display:grid;grid-template-columns:2fr 1fr;gap:22px;margin:6px 0 4px}
.faixa{max-width:var(--max);margin:0 auto;padding:0 16px}
/* destaque estilo G1: imagem sangrada + manchete sobreposta com degrade */
.destaque{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:12px;margin:14px 0;min-height:472px}
.fc{position:relative;display:block;border-radius:6px;overflow:hidden;color:#fff;min-height:0}
.fc-big{grid-row:1 / span 2}
.fc img,.fc .ph{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}
.fc .ph{color:#cfc7b4}
.fc-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.48) 34%,rgba(0,0,0,0) 64%)}
.fc::before{content:"";position:absolute;top:0;left:0;right:0;height:78px;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,0));pointer-events:none}
.fc-kicker{position:absolute;top:10px;left:13px;z-index:2;color:#fff;font-size:12px;font-weight:600;letter-spacing:.2px;text-shadow:0 1px 4px rgba(0,0,0,.6);font-family:"Open Sans",Arial,sans-serif}
.fc-badge{position:absolute;top:12px;right:12px;z-index:2;background:#111;color:#fff;font-size:10px;font-weight:bold;letter-spacing:.5px;padding:3px 7px;border-radius:3px;text-transform:uppercase}
.fc-tx{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px 18px}
.fc-tit{font-weight:800;line-height:1.13;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.fc .fc-tit{font-size:19px}
.fc-big .fc-tit{font-size:31px}
.fc-dek{font-size:14px;margin-top:8px;color:rgba(255,255,255,.93);text-shadow:0 1px 6px rgba(0,0,0,.6)}
.fc img{transition:transform 5s ease}
.fc:hover img{transform:scale(1.07)}
@media(max-width:880px){.destaque{grid-template-columns:1fr;grid-template-rows:none;min-height:0;gap:0;margin:8px 0 0}.fc{aspect-ratio:auto;display:block;border-radius:0;color:#111;overflow:visible;border-bottom:1px solid var(--linha);padding-bottom:16px;margin-bottom:16px}.fc-big{grid-row:auto}.fc img,.fc .ph{width:100%;height:auto;aspect-ratio:16/9;border-radius:6px;object-fit:cover}.fc-big img,.fc-big .ph{aspect-ratio:16/10}.fc .ph{color:#b3a988}.fc-grad,.fc::before{display:none}.fc-kicker{position:static;display:block;color:var(--vermelho);text-shadow:none;padding:10px 0 2px;font-size:11px;letter-spacing:.5px;text-transform:uppercase;font-weight:bold}.fc-badge{display:none}.fc-tx{position:static;padding:0}.fc-tit{color:#111;text-shadow:none;font-weight:800;line-height:1.2}.fc .fc-tit{font-size:18px}.fc-big .fc-tit{font-size:23px}.fc-dek{color:#555;text-shadow:none;margin-top:6px}}
.home-hero .h-sec{display:flex;flex-direction:column;gap:16px}
.hcard{display:block;color:#111}.hcard:hover{text-decoration:none}.hcard:hover .hc-tit{color:var(--vermelho)}
.hcard img,.hcard .ph{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px}
.hcard .hc-tag{color:var(--vermelho);font-size:11px;font-weight:bold;text-transform:uppercase;letter-spacing:.5px;margin-top:10px;display:block}
.hcard .hc-tit{font-size:17px;font-weight:bold;line-height:1.25;margin-top:5px}
.hcard.big .hc-tit{font-size:30px;font-weight:800;line-height:1.14;margin-top:12px}
.hcard.big .hc-dek{color:#555;font-size:15px;margin-top:8px}
.badge{position:absolute;top:8px;left:8px;background:#111;color:#fff;font-size:10px;font-weight:bold;letter-spacing:.5px;padding:3px 7px;border-radius:3px;text-transform:uppercase}
.bloco{margin:28px 0}
.bloco-tit{display:flex;justify-content:space-between;align-items:baseline;border-top:3px solid #111;padding-top:8px;margin-bottom:16px}
.bloco-tit h2{font-size:19px;font-weight:800}.bloco-tit a{color:var(--vermelho);font-size:13px;font-weight:bold}
.lista .lrow{display:grid;grid-template-columns:340px 1fr;grid-template-rows:auto auto 1fr;column-gap:22px;padding:20px 0;border-bottom:1px solid var(--linha);color:#111;grid-template-areas:"img tit" "img dek" "img meta"}
.lista .lrow:hover{text-decoration:none}.lista .lrow:hover .lr-tit{color:var(--vermelho)}
.lr-img{grid-area:img;align-self:start}
.lr-img img,.lr-img .ph{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px}
.lr-tit{grid-area:tit;font-size:21px;font-weight:800;line-height:1.2;color:var(--vermelho)}
.lr-dek{grid-area:dek;color:#555;font-size:14px;margin-top:7px}
.lr-meta{grid-area:meta;color:#999;font-size:12px;margin-top:9px;display:block;align-self:start}
.col-bio{display:flex;gap:18px;align-items:center;margin-bottom:10px}
.col-bio .ph{width:96px;height:96px;flex:0 0 96px;border-radius:50%}
.colgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.colcard{display:flex;gap:12px;align-items:center;border:1px solid var(--linha);border-radius:8px;padding:12px;color:#111}
.colcard:hover{text-decoration:none}.colcard .ph{width:60px;height:60px;flex:0 0 60px;border-radius:50%}
.colcard strong{display:block;font-size:15px}.colcard span{color:var(--vermelho);font-size:10px;font-weight:bold;text-transform:uppercase}
.colcard p{color:#666;font-size:12.5px;margin-top:3px}
.viu a{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--linha);color:#111;align-items:flex-start}
.viu a:hover{text-decoration:none}.viu a:hover .vi-h{color:var(--vermelho)}
.viu .vi-h{flex:1;font-size:14px;font-weight:bold;color:#111}.viu .vi-t{flex:0 0 74px}.viu .vi-t .ph{width:74px;height:56px}
.viu .vi-t img{border-radius:4px}
.compart{display:flex;gap:10px;margin:14px 0;flex-wrap:wrap}
.compart a,.compart button{display:inline-flex;align-items:center;gap:7px;background:#f4f4f4;border:1px solid var(--linha);border-radius:6px;padding:9px 16px;font-size:13px;font-weight:bold;color:#666;cursor:pointer;font-family:inherit}
.compart a:hover,.compart button:hover{background:#ececec;text-decoration:none}.compart .fb{color:#1877f2}.compart .wa{color:#25d366}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.tags a{background:#f4f4f4;border:1px solid var(--linha);border-radius:999px;padding:6px 13px;font-size:12px;font-weight:bold;color:#555}
.tags a:hover{border-color:var(--vermelho);color:var(--vermelho);text-decoration:none}

/* ---------- pagina ARTIGOS (cara de revista, foco no autor) ---------- */
.autores{display:flex;gap:26px;flex-wrap:wrap;padding:6px 0 20px;margin:0 0 6px;border-bottom:1px solid var(--linha)}
.autor{display:flex;flex-direction:column;align-items:center;gap:8px;width:96px;text-align:center;color:#111}
.autor:hover{text-decoration:none}.autor:hover .autor-nome{color:var(--vermelho)}
.autor .ph{width:74px;height:74px;border-radius:50%}
.autor-nome{font-size:13px;font-weight:bold;line-height:1.2}
.autor-area{font-size:11px;color:#888}
.acard{display:grid;grid-template-columns:108px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--linha);align-items:center;color:#111}
.acard:hover{text-decoration:none}.acard:hover .acard-tit{color:var(--vermelho)}
.acard .ph{width:108px;height:108px;border-radius:50%}
.acard-av img{width:108px;height:108px;border-radius:50%;object-fit:cover}
.acard-kick{color:var(--vermelho);font-size:11px;font-weight:bold;text-transform:uppercase;letter-spacing:.5px}
.acard-tit{font-size:22px;font-weight:800;line-height:1.18;margin:3px 0 6px}
.acard-dek{color:#555;font-size:14px}
.acard-by{display:block;color:#999;font-size:12.5px;margin-top:8px}

/* submenu de Artigos */
.nav2-in .has-sub{position:relative;display:flex;align-items:center}
.nav2-in .has-sub > a{color:#222;font-size:13px;font-weight:bold;padding:12px;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-3px}
.nav2-in .has-sub > a:hover{color:var(--vermelho);text-decoration:none;border-bottom-color:var(--vermelho)}
.nav2-in .has-sub > a.ativo{color:var(--vermelho);border-bottom-color:var(--vermelho)}
.seta{font-size:9px}
.submenu{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--linha);border-top:3px solid var(--vermelho);min-width:220px;box-shadow:0 10px 24px rgba(0,0,0,.14);z-index:55}
.has-sub:hover .submenu{display:block}
.submenu a{display:block;padding:11px 16px;font-size:13px;font-weight:bold;color:#222;border-bottom:1px solid var(--linha)}
.submenu a:last-child{border-bottom:0}
.submenu a:hover{color:var(--vermelho);background:#faf6f6;text-decoration:none}
.submenu .sm-tit{color:var(--vermelho)}
/* mini autor na assinatura */
.autor-mini{display:inline-flex;align-items:center;gap:8px}
.autor-mini:hover{text-decoration:none}
.av-mini{width:30px;height:30px;border-radius:50%;object-fit:cover}
.autor-mini-nome{color:var(--vermelho);font-weight:bold}
.autor-mini:hover .autor-mini-nome{text-decoration:underline}
/* bio do colunista (topo da pagina de autor) */
.autor-bio{display:flex;gap:18px;align-items:center;padding:16px 0 4px}
.autor-bio-foto{width:100px;height:100px;border-radius:50%;flex:0 0 100px;object-fit:cover}
.autor-bio-area{color:var(--vermelho);font-size:12px;font-weight:bold;text-transform:uppercase;letter-spacing:.5px}
.autor-bio-nome{font-size:30px;font-weight:800;margin:4px 0 6px;line-height:1.1}
.autor-bio-txt{color:#555;font-size:15px;max-width:680px}
@media(max-width:600px){.acard{grid-template-columns:66px 1fr;gap:13px}.acard .ph{width:66px;height:66px}.acard-tit{font-size:17px}.autores{gap:16px}}

/* ---------- EFEITO DE LEITURA (acende ao rolar) ---------- */
/* .key NAO e negrito por padrao: e uma palavra-chave que acende ao rolar. */
.artigo .key{font-weight:inherit;color:inherit}
.artigo .key.lit,.artigo strong.lit{animation:sweep 1.15s ease;border-radius:2px}
@keyframes sweep{0%{background:rgba(255,214,71,0)}28%{background:rgba(255,214,71,.6)}100%{background:rgba(255,214,71,0)}}

/* ---------- RESPONSIVO ---------- */
@media(max-width:880px){.wrap{flex-direction:column}.lateral{width:100%}.menu-btn{display:flex}.nav2{display:none}.home-hero{grid-template-columns:1fr}.ad-tower{aspect-ratio:auto;height:110px;width:100%}.vm-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
.topo-in{gap:10px;height:52px;padding:0 12px}.nav2{top:52px}.nav2-in{overflow-x:auto}
.secao-topo{font-size:13px;letter-spacing:.3px;padding:0 44px}
.marca{font-size:0}.marca b{font-size:18px;margin:0}
.menu-btn{font-size:0}.menu-btn .barras{width:20px}
.busca{width:auto;padding:0 10px;height:34px}.busca input{display:none}
h1.titulo{font-size:25px}.subtitulo{font-size:16px}.artigo p{font-size:16px}
.lista .lrow{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"tit" "dek" "img" "meta";row-gap:5px}.lr-img{margin:8px -16px 2px}.lr-img img,.lr-img .ph{border-radius:0}.lr-tit{font-size:20px}.lr-dek{margin-top:3px}
.hcard.big .hc-tit{font-size:23px}.vm-grid{grid-template-columns:1fr}
.vejamais .vm-tit{font-size:18px}}
