/* ============================================================
   REVISTA ELEVADOR BRASIL — TEMA 2026
   ------------------------------------------------------------
   ONDE ESTE ARQUIVO VIVE: é a folha de estilo DO TEMA
   (wp-content/themes/revistaeb-2026/assets/css/main.css), carregada
   pelo functions.php via wp_enqueue_style. NÃO é CSS avulso para
   colar em "CSS personalizado"/"CSS adicional" do painel — nada
   aqui deve ser copiado para o Personalizar. Para desfazer,
   troque o tema: nenhum conteúdo é alterado.
   ------------------------------------------------------------
   Paleta do Manual de Marca v.1: grafite #1B1A1C · off-white #F9FAF7 · branco.
   Voz tipográfica do grupo: Sora (títulos) · Manrope (corpo) ·
   JetBrains Mono (kickers/dados) · Instrument Serif (itálico de destaque).
   Fontes hospedadas aqui mesmo — nenhuma conexão a terceiros.
   ============================================================ */

/* ---------- 1. FONTES LOCAIS ---------- */
@font-face{font-family:'Sora';src:url('../fonts/Sora-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Sora';src:url('../fonts/Sora-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Sora';src:url('../fonts/Sora-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/Manrope-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/Manrope-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/Manrope-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('../fonts/JetBrainsMono-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('../fonts/JetBrainsMono-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('../fonts/InstrumentSerif-400i.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}

/* ---------- 2. TOKENS ---------- */
:root{
  --eb-bg:#F9FAF7;
  --eb-surface:#FFFFFF;
  --eb-ink:#1B1A1C;
  --eb-muted:rgba(27,26,28,.62);
  --eb-faint:rgba(27,26,28,.40);
  --eb-line:rgba(27,26,28,.10);
  --eb-line2:rgba(27,26,28,.24);
  --eb-bar:#1B1A1C;
  --eb-bar-text:#F9FAF7;
  --eb-bar-muted:rgba(249,250,247,.58);
  --eb-bar-line:rgba(249,250,247,.14);
  --eb-font-head:'Sora',system-ui,sans-serif;
  --eb-font-body:'Manrope',system-ui,sans-serif;
  --eb-font-mono:'JetBrains Mono',ui-monospace,monospace;
  --eb-font-serif:'Instrument Serif',Georgia,serif;
  --eb-largura:1200px;
  --eb-largura-texto:760px;
}

/* ---------- 3. BASE ---------- */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--eb-bg);color:var(--eb-ink);font-family:var(--eb-font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--eb-ink)}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--eb-ink);outline-offset:3px}
.eb-wrap{max-width:var(--eb-largura);margin:0 auto;padding:0 24px}
.eb-wrap--texto{max-width:var(--eb-largura-texto)}
.eb-pular{position:absolute;left:-9999px;top:0;background:var(--eb-ink);color:var(--eb-bg);padding:12px 20px;z-index:99}
.eb-pular:focus{left:8px;top:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ---------- 4. GRAMÁTICA DO GRUPO ---------- */
.eb-kicker{font-family:var(--eb-font-mono);font-size:12px;letter-spacing:.2em;color:var(--eb-ink);margin-bottom:18px;text-transform:uppercase}
.eb-kicker::before{content:"/ "}
h1,h2,h3,h4{font-family:var(--eb-font-head);letter-spacing:-.01em;font-weight:700}
h1 em,h2 em{font-family:var(--eb-font-serif);font-style:italic;font-weight:400;letter-spacing:0}
.eb-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--eb-font-head);font-size:14.5px;font-weight:600;text-decoration:none;padding:15px 28px;min-height:44px;border-radius:999px;transition:transform .3s,opacity .3s,border-color .3s}
.eb-btn--solido{background:var(--eb-ink);color:var(--eb-bg);border:1px solid var(--eb-ink)}
.eb-btn--solido:hover{opacity:.88;transform:translateY(-1px)}
.eb-btn--vazado{background:transparent;color:var(--eb-ink);border:1px solid var(--eb-line2)}
.eb-btn--vazado:hover{border-color:var(--eb-ink)}
.eb-mais{font-family:var(--eb-font-mono);font-size:12px;letter-spacing:.14em;color:var(--eb-ink);text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center;text-transform:uppercase}

/* ---------- 5. CABEÇALHO ---------- */
.eb-topo{background:var(--eb-bar);border-bottom:1px solid var(--eb-bar-line);position:relative;z-index:20}
.eb-topo .eb-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding-top:10px;padding-bottom:10px}
.eb-logo img{height:32px;width:auto}
.eb-logo{display:inline-flex;align-items:center;min-height:44px}
.eb-nav ul{list-style:none;display:flex;gap:4px;flex-wrap:wrap;margin:0}
.eb-nav a{font-family:var(--eb-font-head);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--eb-bar-text);text-decoration:none;padding:12px;border-radius:8px;min-height:44px;display:inline-flex;align-items:center}
.eb-nav a:hover{background:rgba(249,250,247,.08)}
.eb-nav .current-menu-item>a,.eb-nav .current_page_item>a{text-decoration:underline;text-underline-offset:6px}
.eb-menu-botao{display:none;background:transparent;border:1px solid var(--eb-bar-line);color:var(--eb-bar-text);border-radius:10px;min-height:44px;min-width:44px;align-items:center;justify-content:center;font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.14em;padding:0 14px}

/* ---------- TOPO: busca e redes ---------- */
/* Ficam num bloco só para que no celular os dois desçam juntos, abaixo do
   logo, sem espremer o menu. */
.eb-topo__acoes{display:flex;align-items:center;gap:14px;flex:0 1 auto;min-width:0}
/* Quem cede espaço é a BUSCA, não o menu. Sem isto o `ul` do menu — que é
   flex-wrap:wrap — encolhe antes da conta e quebra em duas linhas, deixando o
   topo com 113px em vez de 64px, mesmo havendo folga (medido: menu 534px,
   logo 202, ações 392, num wrap de 1200). */
.eb-nav{flex:0 0 auto}
.eb-busca-topo{display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;background:rgba(249,250,247,.08);border:1px solid var(--eb-bar-line);border-radius:999px;padding:0 6px 0 14px;min-height:40px}
.eb-busca-topo input[type=search]{width:150px;min-width:0;border:0;background:transparent;color:var(--eb-bar-text);font-family:var(--eb-font-body);font-size:13.5px;padding:0;outline:none;min-height:38px;-webkit-appearance:none;appearance:none}
.eb-busca-topo input[type=search]::placeholder{color:var(--eb-bar-muted)}
.eb-busca-topo input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
.eb-busca-topo:focus-within{border-color:var(--eb-bar-text);background:rgba(249,250,247,.14)}
.eb-busca-topo button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;border:0;border-radius:999px;background:transparent;color:var(--eb-bar-text);cursor:pointer;padding:0}
.eb-busca-topo button:hover{background:rgba(249,250,247,.14)}

.eb-social{list-style:none;display:flex;align-items:center;gap:2px;margin:0;padding:0}
.eb-social a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border-radius:10px;color:inherit;text-decoration:none}
.eb-social a:hover{background:rgba(249,250,247,.12)}
.eb-social--topo{color:var(--eb-bar-text)}
.eb-social--rodape{gap:4px;margin-top:-4px}
.eb-social--rodape a{color:var(--eb-bar-muted)}
.eb-social--rodape a:hover{color:var(--eb-bar-text);background:rgba(249,250,247,.1)}

/* ---------- 6. HERO DA EDIÇÃO ---------- */
.eb-hero{padding:72px 0 64px;border-bottom:1px solid var(--eb-line)}
.eb-hero .eb-wrap{display:grid;grid-template-columns:340px 1fr;gap:64px;align-items:center}
.eb-hero__capa img{border-radius:6px;box-shadow:0 24px 60px -24px rgba(27,26,28,.45);border:1px solid var(--eb-line);width:100%}
.eb-hero h1{font-size:clamp(34px,4.6vw,52px);line-height:1.08;margin-bottom:18px}
.eb-hero__linha{font-size:18px;color:var(--eb-muted);max-width:52ch;margin-bottom:30px}
.eb-hero__ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.eb-hero__meta{font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.16em;color:var(--eb-faint);text-transform:uppercase}

/* ---------- 7. CARDS E GRADES ---------- */
.eb-secao{padding:64px 0}
.eb-secao--fina{padding:8px 0 24px}
.eb-secao__topo{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:36px;flex-wrap:wrap}
.eb-secao__topo h2,.eb-secao__topo h1{font-size:clamp(26px,3.2vw,36px)}
.eb-grade{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.eb-card{background:var(--eb-surface);border:1px solid var(--eb-line);border-radius:18px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.2,.6,.2,1),border-color .35s}
.eb-card:hover{transform:translateY(-4px);border-color:var(--eb-line2)}
.eb-card__thumb{aspect-ratio:16/9;object-fit:cover;width:100%;filter:grayscale(18%);background:var(--eb-line)}
.eb-card__cont{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.eb-card__data{font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.18em;color:var(--eb-muted);font-weight:700}
.eb-card__titulo{font-size:17px;font-weight:600;line-height:1.35}
.eb-card--destaque{grid-column:span 2}
.eb-card--destaque .eb-card__titulo{font-size:24px}
.eb-card--destaque .eb-card__thumb{aspect-ratio:21/10}
.eb-card--destaque .eb-card__cont{padding:22px 24px 26px}

/* ---------- 8. BLOCOS DE CATEGORIA NA HOME ---------- */
.eb-cat{margin-bottom:56px}
.eb-cat__topo{display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-bottom:1px solid var(--eb-line2);padding-bottom:14px;margin-bottom:26px}
.eb-cat__topo h2{font-size:21px;text-transform:uppercase;letter-spacing:.04em}

/* ---------- 9. COLUNISTAS ---------- */
.eb-colunistas{border-top:1px solid var(--eb-line)}
.eb-fila-autores{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.eb-autor{background:var(--eb-surface);border:1px solid var(--eb-line);border-radius:18px;padding:26px 16px;text-align:center;text-decoration:none;transition:border-color .3s,transform .35s;display:block}
.eb-autor:hover{border-color:var(--eb-line2);transform:translateY(-4px)}
.eb-autor__foto{width:76px;height:76px;border-radius:50%;margin:0 auto 14px;object-fit:cover;object-position:center 20%;border:1px solid var(--eb-line2);filter:grayscale(14%)}
.eb-autor__foto--iniciais{background:var(--eb-bg);display:flex;align-items:center;justify-content:center;font-family:var(--eb-font-head);font-weight:700;font-size:20px;color:var(--eb-ink);filter:none}
.eb-autor__nome{display:block;font-family:var(--eb-font-head);font-size:13.5px;font-weight:600;line-height:1.3;margin-bottom:8px}
.eb-autor__qtd{font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.14em;color:var(--eb-faint);text-transform:uppercase}

/* ---------- 10. NEWSLETTER ---------- */
.eb-newsletter{background:var(--eb-bar) url('../img/textura-grafite.jpg') center/cover no-repeat;color:var(--eb-bar-text);padding:80px 0}
.eb-newsletter .eb-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.eb-newsletter .eb-kicker{color:var(--eb-bar-muted)}
.eb-newsletter h2{font-size:clamp(26px,3.4vw,38px);color:var(--eb-bar-text);margin-bottom:14px}
.eb-newsletter p{color:var(--eb-bar-muted);max-width:46ch}
/* O formulário é o do MC4WP (com Turnstile injetado pelo mu-plugin ca-turnstile).
   O tema não recria a marcação do plugin: só a veste. */
.eb-form-news .mc4wp-form-fields{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.eb-form-news p{margin:0;width:100%}
.eb-form-news label{display:block;width:100%}
.eb-form-news input[type=email]{width:100%;min-height:52px;border-radius:999px;border:1px solid var(--eb-bar-line);background:rgba(249,250,247,.06);color:var(--eb-bar-text);font-family:var(--eb-font-body);font-size:15px;padding:0 24px;outline:none}
.eb-form-news input[type=email]::placeholder{color:var(--eb-bar-muted)}
.eb-form-news input[type=email]:focus{border-color:rgba(249,250,247,.5)}
.eb-form-news .cf-turnstile{margin:2px 0 0!important}
.eb-form-news input[type=submit],.eb-form-news button[type=submit]{display:inline-flex;align-items:center;justify-content:center;background:var(--eb-bg);color:var(--eb-ink);border:none;font-family:var(--eb-font-head);font-size:14.5px;font-weight:700;padding:15px 30px;min-height:48px;border-radius:999px;cursor:pointer;transition:transform .3s,opacity .3s;-webkit-appearance:none;appearance:none}
.eb-form-news input[type=submit]:hover,.eb-form-news button[type=submit]:hover{opacity:.9;transform:translateY(-1px)}
.eb-form-news .mc4wp-response{color:var(--eb-bar-text);font-size:14px;width:100%}
.eb-form-news .mc4wp-response a{color:var(--eb-bar-text)}
.eb-nota{font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.16em;color:var(--eb-bar-muted);margin-top:18px;text-transform:uppercase}

/* ---------- 11. EDIÇÕES (acima do rodapé) ---------- */
.eb-edicoes{position:relative;padding:80px 0;overflow:hidden}
.eb-edicoes::before{content:"";position:absolute;inset:0;background:url('../img/ilustracao-elevador.jpg') right -60px center/contain no-repeat;opacity:.16;pointer-events:none}
.eb-edicoes .eb-wrap{position:relative}
.eb-grade-capas{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-bottom:38px;max-width:920px}
.eb-capa-item{text-decoration:none;display:block}
.eb-capa-item img{border-radius:6px;border:1px solid var(--eb-line);box-shadow:0 20px 44px -22px rgba(27,26,28,.5);transition:transform .35s cubic-bezier(.2,.6,.2,1);width:100%}
.eb-capa-item:hover img{transform:translateY(-6px)}
.eb-capa-item span{display:block;font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.18em;color:var(--eb-faint);margin-top:14px;text-transform:uppercase}
/* Banca completa: quantas capas couberem por linha, sem esticar nenhuma.
   As capas do acervo vão de 0,71 a 1,06 de proporção; a moldura 3/4 com
   'contain' alinha todas e os rótulos, sem cortar capa nenhuma. */
.eb-grade-capas--todas{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:30px 26px;max-width:none;margin-bottom:0}
.eb-grade-capas--todas .eb-capa-item img{aspect-ratio:3/4;object-fit:contain;object-position:center bottom;width:100%;border:none;box-shadow:none;filter:drop-shadow(0 16px 30px rgba(27,26,28,.28))}
.eb-grade-capas--todas .eb-capa-item:hover img{transform:translateY(-6px)}
.eb-grade-capas--todas .eb-capa-item span{margin-top:16px}
.eb-ano{margin-bottom:56px}
.eb-ano .eb-cat__topo h2{font-family:var(--eb-font-mono);font-size:14px;letter-spacing:.2em;font-weight:500}
.eb-ano .eb-mais{color:var(--eb-faint)}

/* ---------- 12. MATÉRIA ---------- */
.eb-materia__cab{padding-block:64px 40px}
.eb-materia__cab h1{font-size:clamp(30px,4.2vw,44px);line-height:1.14;margin-bottom:22px}
.eb-materia__linha{font-size:19px;color:var(--eb-muted);line-height:1.55;margin-bottom:28px}
.eb-byline{display:flex;align-items:center;gap:14px;border-top:1px solid var(--eb-line);border-bottom:1px solid var(--eb-line);padding:16px 0;flex-wrap:wrap}
.eb-byline .eb-autor__foto{width:44px;height:44px;margin:0;font-size:14px}
.eb-byline__quem strong{display:block;font-family:var(--eb-font-head);font-size:14px;font-weight:600}
.eb-byline__quem a{text-decoration:none}
.eb-byline__quem a:hover{text-decoration:underline;text-underline-offset:3px}
.eb-byline__papel{font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.18em;color:var(--eb-faint);text-transform:uppercase}
.eb-byline__quando{margin-left:auto;font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.16em;color:var(--eb-faint);text-transform:uppercase}
.eb-figura{margin:40px 0}
.eb-figura img{border-radius:18px;border:1px solid var(--eb-line);width:100%}
.eb-figura figcaption{font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.14em;color:var(--eb-faint);margin-top:12px;text-transform:uppercase}

.eb-corpo{font-size:18px;line-height:1.78}
.eb-corpo p{margin-bottom:26px}
.eb-corpo h2{font-size:27px;margin:44px 0 18px}
.eb-corpo h3{font-size:22px;margin:36px 0 14px}
.eb-corpo ul,.eb-corpo ol{margin:0 0 26px 24px}
.eb-corpo li{margin-bottom:10px}
.eb-corpo img{border-radius:12px;margin:10px 0}
.eb-corpo a{text-underline-offset:3px}
.eb-corpo blockquote{font-family:var(--eb-font-serif);font-style:italic;font-size:27px;line-height:1.4;border-left:2px solid var(--eb-ink);padding:6px 0 6px 28px;margin:40px 0}
.eb-corpo blockquote p{margin-bottom:0}
.eb-corpo iframe,.eb-corpo embed,.eb-corpo video{max-width:100%;border-radius:12px}
.eb-corpo table{width:100%;border-collapse:collapse;margin-bottom:26px;font-size:15px}
.eb-corpo th,.eb-corpo td{border:1px solid var(--eb-line);padding:10px 12px;text-align:left}
.eb-corpo figure{margin:26px 0;max-width:100%}
.eb-corpo .wp-caption-text,.eb-corpo figcaption{font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.12em;color:var(--eb-faint);margin-top:10px}

.eb-box-autor{background:var(--eb-surface);border:1px solid var(--eb-line);border-radius:18px;padding:28px;display:flex;gap:20px;align-items:center;margin:48px 0;flex-wrap:wrap}
.eb-box-autor .eb-autor__foto{width:72px;height:72px;margin:0;flex-shrink:0}
.eb-box-autor h2{font-size:17px;margin-bottom:6px}
.eb-box-autor p{color:var(--eb-muted);font-size:14.5px}
.eb-box-autor__rotulo{font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.2em;color:var(--eb-faint);display:block;margin-bottom:4px;text-transform:uppercase}
.eb-tags{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0}
.eb-tags a{font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.12em;text-decoration:none;border:1px solid var(--eb-line2);border-radius:999px;padding:8px 16px;min-height:36px;display:inline-flex;align-items:center;text-transform:uppercase}
.eb-tags a:hover{border-color:var(--eb-ink)}

/* ---------- 13. ARQUIVOS, BUSCA, 404 ---------- */
.eb-cab-arquivo{padding-block:56px 8px}
.eb-cab-arquivo h1{font-size:clamp(28px,3.6vw,40px)}
.eb-cab-arquivo .eb-descricao{color:var(--eb-muted);max-width:60ch;margin-top:14px}
.eb-vazio{padding:60px 0 90px;color:var(--eb-muted)}
.eb-busca{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 8px}
.eb-busca input[type=search]{flex:1;min-width:220px;min-height:52px;border-radius:999px;border:1px solid var(--eb-line2);background:var(--eb-surface);color:var(--eb-ink);font-family:var(--eb-font-body);font-size:15px;padding:0 24px;outline:none}
.eb-busca input[type=search]:focus{border-color:var(--eb-ink)}
.eb-perfil{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding-block:56px 10px}
.eb-perfil .eb-autor__foto{width:176px;height:176px;margin:0;font-size:44px}
.eb-perfil__bio{color:var(--eb-muted);max-width:62ch;margin-top:10px}

.navigation.pagination{padding:20px 0 80px}
.nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center}
.nav-links .page-numbers{font-family:var(--eb-font-mono);font-size:13px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--eb-line);border-radius:999px;text-decoration:none;background:var(--eb-surface)}
.nav-links .page-numbers.current{background:var(--eb-ink);color:var(--eb-bg);border-color:var(--eb-ink)}
.nav-links .page-numbers:hover{border-color:var(--eb-ink)}

/* ---------- 14. RODAPÉ ---------- */
.eb-rodape{background:var(--eb-bar) url('../img/textura-grafite.jpg') center/cover no-repeat;color:var(--eb-bar-text);border-top:1px solid var(--eb-bar-line);padding:64px 0 40px;margin-top:0}
.eb-rodape__grade{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;margin-bottom:48px}
.eb-rodape__logo{width:200px;height:auto;margin-bottom:20px}
.eb-rodape p{color:var(--eb-bar-muted);font-size:14.5px;max-width:44ch}
.eb-rodape__tit{font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.2em;color:var(--eb-bar-muted);margin-bottom:18px;text-transform:uppercase}
.eb-rodape ul{list-style:none}
.eb-rodape li a{color:var(--eb-bar-text);text-decoration:none;font-size:14.5px;line-height:2.3;display:inline-block;min-height:34px}
.eb-rodape li a:hover{text-decoration:underline;text-underline-offset:4px}
.eb-rodape__contato{margin-top:14px;font-size:14.5px;color:var(--eb-bar-muted)}
.eb-rodape__contato a{color:var(--eb-bar-text)}
.eb-rodape__base{border-top:1px solid var(--eb-bar-line);padding-top:26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--eb-font-mono);font-size:10.5px;letter-spacing:.14em;color:var(--eb-bar-muted);text-transform:uppercase}

/* ---------- 14b. PUBLICIDADE ----------
   Rótulo sempre visível (prática editorial dos dois concorrentes) e altura
   reservada pela proporção, para o banner não empurrar o texto ao carregar. */
.eb-anuncio{display:block;margin:0 auto 40px;text-align:center;max-width:1200px}
.eb-anuncio__rotulo{display:block;font-family:var(--eb-font-mono);font-size:11px;letter-spacing:.16em;color:var(--eb-faint);text-transform:uppercase;margin-bottom:10px}
.eb-anuncio img{width:100%;height:auto;border-radius:12px;border:1px solid var(--eb-line);background:var(--eb-surface)}
.eb-anuncio--topo{margin-top:8px}
.eb-anuncio--topo img,.eb-anuncio--rodape img,.eb-anuncio--materia img{aspect-ratio:6/1;object-fit:contain}
/* `contain`, não `cover`: a faixa da casa é 1200x200 (6:1) e nessa medida os dois
   dão o mesmo resultado. A diferença aparece quando o anunciante manda fora do
   formato — o GIF do ExpoElevador é 970x250 (3,9:1). Com `cover` o navegador
   cortava topo e base para forçar 6:1 e comia a data do evento; com `contain` a
   arte entra inteira e sobra fundo nas laterais. Nunca cortar peça de anunciante. */
.eb-anuncio--materia{margin:36px auto 40px}
/* Card patrocinado: mesma moldura das matérias, para não destoar da grade. */
.eb-anuncio--grade{margin:0;text-align:left;display:flex;flex-direction:column;background:var(--eb-surface);border:1px solid var(--eb-line);border-radius:18px;overflow:hidden;padding:0}
.eb-anuncio--grade .eb-anuncio__rotulo{padding:14px 22px 0;margin-bottom:8px}
.eb-anuncio--grade img{aspect-ratio:16/9;object-fit:cover;border:none;border-radius:0}
@media (max-width:900px){
  .eb-anuncio{margin-bottom:30px}
  /* No celular a faixa 6:1 fica ilegível; a versão de celular manda, e sem ela
     a proporção afrouxa para 3:1. */
  .eb-anuncio--topo img,.eb-anuncio--rodape img,.eb-anuncio--materia img{aspect-ratio:3/1}
}

/* ---------- 15. ANIMAÇÃO ---------- */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1)}
[data-reveal].is-visible{opacity:1;transform:none}
/* Sem JavaScript, nada pode ficar escondido: conteúdo vem antes do efeito. */
@media (scripting: none){
  [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
  .eb-card,.eb-autor,.eb-capa-item img,.eb-btn{transition:none!important}
}

/* ---------- 16. MOBILE (breakpoint do grupo: 900px) ---------- */
@media (max-width:900px){
  .eb-topo .eb-wrap{flex-wrap:wrap;justify-content:space-between}
  .eb-menu-botao{display:inline-flex}
  .eb-nav{display:none;width:100%;order:4;padding-bottom:8px}
  /* Busca e redes ocupam a linha inteira, abaixo do logo e do botão MENU. */
  .eb-topo__acoes{order:3;width:100%;justify-content:space-between;padding-top:4px}
  .eb-busca-topo{flex:1;max-width:none}
  .eb-busca-topo input[type=search]{width:100%}
  .eb-nav.esta-aberto{display:block}
  .eb-nav ul{flex-direction:column;gap:0}
  .eb-nav a{width:100%;border-bottom:1px solid var(--eb-bar-line);border-radius:0}
  .eb-hero{padding:48px 0 44px}
  .eb-hero .eb-wrap{grid-template-columns:1fr;gap:36px}
  .eb-hero__capa{max-width:280px;margin:0 auto}
  .eb-hero__texto{text-align:center}
  .eb-hero__ctas{justify-content:center}
  .eb-hero__linha{margin-left:auto;margin-right:auto}
  .eb-grade{grid-template-columns:1fr}
  .eb-card--destaque{grid-column:span 1}
  .eb-fila-autores{grid-template-columns:repeat(2,1fr)}
  .eb-newsletter .eb-wrap{grid-template-columns:1fr;gap:36px}
  .eb-grade-capas{grid-template-columns:1fr;max-width:280px;margin-left:auto;margin-right:auto}
  /* A banca completa continua em duas colunas: 36 capas numa fila só é rolagem demais. */
  .eb-grade-capas--todas{grid-template-columns:repeat(2,1fr);max-width:none;gap:26px 16px}
  .eb-grade-capas--todas .eb-capa-item span{font-size:11px;letter-spacing:.1em;margin-top:12px}
  .eb-edicoes::before{opacity:.08}
  .eb-rodape__grade{grid-template-columns:1fr;gap:36px}
  .eb-byline__quando{margin-left:0;width:100%}
  .eb-corpo{font-size:17px}
  .eb-corpo blockquote{font-size:23px;padding-left:20px}
}

/* ------------------------------------------------------------
   Presets do editor que o conteúdo antigo usa.
   O global-styles do WordPress (9.596 bytes em TODA página) foi removido no
   functions.php. Destas classes, o conteúdo publicado usa apenas 4 — medido em
   16/08/2026 sobre os 1.263 posts. Os valores são os que o próprio WordPress
   servia, lidos de wp_get_global_stylesheet().
   `has-regular-font-size` NÃO entra: nunca esteve no global styles.
   ------------------------------------------------------------ */
.has-vivid-red-color{color:#cf2e2e!important}
.has-black-color{color:#000!important}
.has-vivid-red-background-color{background-color:#cf2e2e!important}
.has-large-font-size{font-size:36px!important}

/* No celular a faixa 6:1 fica com 312x52 px e o texto some. A arte de celular
   tem proporção própria (640x520), então aqui a imagem manda na altura.
   MEDIDO em 16/08/2026. */
@media (max-width:700px){
  .eb-anuncio--topo img,.eb-anuncio--rodape img,.eb-anuncio--materia img{aspect-ratio:auto}
}
/* Banner da casa: sem o rótulo "Publicidade", o bloco encosta menos no conteúdo. */
.eb-anuncio--casa{margin-top:18px}
