/*
Theme Name: Horizon Blog
Theme URI: https://consultoriahorizon.com.br/blog
Author: HorizonConsultoria
Description: Tema do Blog da HorizonConsultoria. Portado do tema do EPIC-BLOG-2 (CodeUP), com a paleta trocada pelos tokens Horizon (design/tokens.css do lp-horizon). Dark-only, igual à LP institucional.
Version: 1.0.0
Text Domain: horizon-blog
*/

/* ──────────────────────────────────────────────────────────────
   Paleta: valores RESOLVIDOS de lp-horizon/design/tokens.css.
   O WordPress não carrega o tokens.css do Next, então os hex são
   copiados aqui — nunca referências var(--hzn-*). Conferidos em
   2026-08-30 contra o CSS SERVIDO pelo apex (nenhum drift).
   ────────────────────────────────────────────────────────────── */
:root{
  --bg:#0b0d12;        /* --hzn-bg-base */
  --surface:#131720;   /* --hzn-bg-raised */
  --ink:#f5f5f5;       /* --hzn-text-primary */
  --text:#a8acba;      /* --hzn-text-secondary */
  --muted:#6b7280;     /* --hzn-text-muted */
  --line:#2a3344;      /* --hzn-border-default */
  --line-sub:#1f2937;  /* --hzn-border-subtle */
  --gold:#f59e0b;      /* --hzn-brand-400 — accent de links e bordas */
  --gold-hi:#fbbf24;   /* --hzn-brand-300 — topo do gradiente */
  --gold-dp:#d97706;   /* --hzn-brand-500 — CTA primário */
  --ink-inv:#0b0d12;   /* --hzn-text-inverse — texto sobre ambar */
  --dark:#0e1117;      /* --hzn-bg-muted — header / footer */
  --dark2:#1a2030;     /* --hzn-bg-overlay — placeholder de imagem */
  --shadow:0 6px 24px rgba(0,0,0,.45);
  /* Tipografia: mesma família do apex — --hzn-font-sans do tokens.css.
     Self-hosted (ver @font-face abaixo), sem link de fonte de terceiro.
     Antes desta mudança era a dupla condensada+geométrica herdada da marca
     irmã — desalinhada do apex, corrigido em 2026-08-30. */
  --font-sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --display:var(--font-sans); --body:var(--font-sans);
  --wrap:1180px;
}
*{box-sizing:border-box}

/* ── Inter — self-hosted, mesmo arquivo servido pelo apex via next/font ──
   Fonte variável (weight 100–900), subset Latin (u+0000-00FF + pontuação
   tipográfica) — cobre todos os acentos do pt-BR. Zero requisição a CDN de
   fonte de terceiro: arquivo local em fonts/, cacheado immutable 1 ano pelo
   blog-alias.conf (.woff2 já está no FilesMatch). Baixado direto do apex em
   2026-08-30 para garantir a MESMA versão/hinting — não é uma cópia
   genérica de provedor externo. */
@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('fonts/inter-latin-var.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--display);color:var(--ink);line-height:1.12;margin:0 0 .4em;font-weight:800;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px}
.hzn-wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* ── Header (escuro, espelha o apex) ── */
.hzn-hd{position:sticky;top:0;z-index:1000;background:rgba(14,17,23,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-sub)}
.hzn-hd__in{max-width:var(--wrap);margin:0 auto;padding:0 24px;height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.hzn-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.hzn-brand__mark{width:38px;height:38px;border-radius:9px;background:var(--gold-dp);color:var(--ink-inv);font-family:var(--display);font-weight:900;font-size:23px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}
.hzn-brand__w{font-family:var(--display);font-weight:900;font-size:24px;text-transform:uppercase;letter-spacing:-.02em;color:#fff;line-height:1}
.hzn-brand__w b{color:var(--gold)}
.hzn-brand__k{display:block;font-family:var(--body);font-size:9.5px;font-weight:700;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-top:3px}
.hzn-nav{display:flex;align-items:center;gap:26px}
.hzn-nav a{color:rgba(255,255,255,.72);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;text-decoration:none}
.hzn-nav a:hover,.hzn-nav a.is-active{color:var(--gold)}
.hzn-cta{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;border-radius:999px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-inv)!important;background:linear-gradient(180deg,var(--gold-hi),var(--gold-dp));text-decoration:none!important}
.hzn-burger{display:none;background:none;border:0;color:#fff;cursor:pointer;font-size:20px}
@media(max-width:900px){.hzn-nav,.hzn-cta{display:none}.hzn-burger{display:block}}

/* ── Hero / carrossel ── */
.hzn-hero{position:relative;background:var(--dark)}
.hzn-slides{position:relative;max-width:1320px;margin:0 auto}
.hzn-slide{position:relative;display:none;min-height:420px}
.hzn-slide.is-on{display:block}
.hzn-slide__bg{position:absolute;inset:0;background-size:cover;background-position:center}
.hzn-slide__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,18,.94) 0%,rgba(11,13,18,.76) 45%,rgba(11,13,18,.3) 100%)}
.hzn-slide__c{position:relative;max-width:var(--wrap);margin:0 auto;padding:88px 24px;display:flex;align-items:center;min-height:420px}
.hzn-slide__box{max-width:560px}
.hzn-tag{display:inline-block;font-family:var(--body);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-inv);background:var(--gold);padding:5px 12px;border-radius:999px}
.hzn-slide__t{font-size:42px;color:#fff;margin:16px 0 12px;line-height:1.05}
.hzn-slide__x{color:rgba(255,255,255,.82);font-size:17px;margin-bottom:22px}
.hzn-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,var(--gold-hi),var(--gold-dp));color:var(--ink-inv);font-weight:700;padding:12px 24px;border-radius:999px;text-decoration:none!important}
.hzn-dots{position:absolute;bottom:18px;left:0;right:0;display:flex;gap:8px;justify-content:center;z-index:3}
.hzn-dots button{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.4);cursor:pointer;padding:0}
.hzn-dots button.is-on{background:var(--gold);width:22px;border-radius:6px}
@media(max-width:700px){.hzn-slide__t{font-size:30px}.hzn-slide__c{padding:56px 24px;min-height:340px}.hzn-slide,.hzn-slide__c{min-height:340px}}

/* ── Seções + grid de cards ── */
.hzn-sec{padding:56px 0}
.hzn-sec__h{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.hzn-sec__h h2{font-size:30px;margin:0}
.hzn-sec__h::after{content:"";flex:1;height:1px;background:var(--line)}
.hzn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media(max-width:900px){.hzn-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hzn-grid{grid-template-columns:1fr}}
.hzn-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,border-color .2s}
.hzn-card:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(0,0,0,.6);border-color:var(--gold)}
.hzn-card a{text-decoration:none;color:inherit;display:block}
.hzn-card__img{aspect-ratio:16/9;background:var(--dark2) var(--ph) center/cover;display:block}
.hzn-card__b{padding:18px 20px 22px}
.hzn-card__cat{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}
.hzn-card__t{font-family:var(--display);font-weight:800;font-size:21px;color:var(--ink);line-height:1.15;margin:8px 0 8px}
.hzn-card__x{font-size:14.5px;color:var(--text);line-height:1.55}
.hzn-card__m{font-size:12px;color:var(--muted);margin-top:12px}

/* ── Artigo (single) ── */
.hzn-article{padding:40px 0 64px}
.hzn-bc{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:14px}
.hzn-bc a{color:var(--gold)}
.hzn-art__t{font-size:40px;line-height:1.08;max-width:820px;margin:0 0 14px}
.hzn-art__meta{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:13.5px;margin-bottom:24px}
.hzn-art__cover{border-radius:18px;overflow:hidden;margin:0 0 32px;box-shadow:var(--shadow);border:1px solid var(--line)}
.hzn-art__cover img{width:100%;aspect-ratio:16/9;object-fit:cover}
.hzn-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
@media(max-width:980px){.hzn-layout{grid-template-columns:1fr}}
.hzn-content{max-width:760px;font-size:18px;line-height:1.75;color:var(--ink)}
.hzn-content p{margin:0 0 1.2em}
.hzn-content h2{font-size:27px;margin:1.8em 0 .5em}
.hzn-content h3{font-size:20px;font-family:var(--body);font-weight:700;color:var(--ink);margin:1.5em 0 .4em}
.hzn-content ul{margin:0 0 1.3em;padding-left:1.2em}
.hzn-content li{margin:.4em 0}
.hzn-content a{color:var(--gold);text-decoration:underline}
.hzn-content strong{color:var(--ink)}
.hzn-content blockquote{border-left:3px solid var(--gold);margin:1.5em 0;padding:.2em 0 .2em 1.2em;color:var(--text)}

/* ── CTA lateral (agendamento Horizon) ── */
.hzn-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:18px}
.hzn-side__h{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-family:var(--body);font-weight:700;margin:0 0 2px}
.hzn-bn{display:block;border-radius:16px;overflow:hidden;text-decoration:none!important;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);transition:transform .2s,border-color .2s}
.hzn-bn:hover{transform:translateY(-3px);border-color:var(--gold)}
.hzn-bn__top{display:block;height:96px;background:linear-gradient(135deg,var(--dark2) 0%,var(--dark) 60%);border-bottom:1px solid var(--line);position:relative}
.hzn-bn__top::after{content:"H";position:absolute;left:20px;bottom:-22px;width:46px;height:46px;border-radius:11px;background:var(--gold-dp);color:var(--ink-inv);font-family:var(--display);font-weight:900;font-size:27px;display:flex;align-items:center;justify-content:center}
.hzn-bn__b{padding:34px 18px 20px}
.hzn-bn__tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}
.hzn-bn__t{font-family:var(--display);font-weight:800;font-size:19px;color:var(--ink);line-height:1.15;margin:6px 0 8px}
.hzn-bn__x{font-size:13.5px;color:var(--text);line-height:1.5;margin:0 0 14px}
.hzn-bn__cta{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-inv);background:linear-gradient(180deg,var(--gold-hi),var(--gold-dp));padding:9px 18px;border-radius:999px}

/* ── Rótulo de autor (E-E-A-T) ── */
.hzn-author{display:flex;gap:22px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;margin-top:44px;box-shadow:var(--shadow)}
.hzn-author__ph{width:88px;height:88px;border-radius:50%;flex-shrink:0;border:3px solid var(--gold);background:var(--dark2);color:var(--gold);font-family:var(--display);font-weight:900;font-size:34px;display:flex;align-items:center;justify-content:center;line-height:1}
.hzn-author__k{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:700}
.hzn-author__n{font-family:var(--display);font-size:25px;color:var(--ink);margin:3px 0 4px}
.hzn-author__r{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);font-weight:700;margin:0 0 10px}
.hzn-author__bio{font-size:15px;color:var(--text);margin:0 0 16px;line-height:1.6}
.hzn-author__links{display:flex;gap:10px;flex-wrap:wrap}
.hzn-author__lk,.hzn-author__ml{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;padding:9px 18px;border-radius:999px;text-decoration:none!important;color:#fff!important}
.hzn-author__lk{background:#0a66c2}
.hzn-author__ml{background:var(--dark2);border:1px solid var(--line)}
.hzn-author__lk:hover,.hzn-author__ml:hover{filter:brightness(1.15)}
@media(max-width:560px){.hzn-author{flex-direction:column;text-align:left}}

/* ── Leia também ── */
.hzn-rel{margin-top:56px;border-top:1px solid var(--line);padding-top:32px}
.hzn-rel>h2{font-size:24px;margin-bottom:22px}

/* ── Footer ── */
.hzn-ft{background:var(--dark);color:var(--text);margin-top:40px;border-top:1px solid var(--line-sub)}
.hzn-ft__in{max-width:var(--wrap);margin:0 auto;padding:48px 24px 36px;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between}
.hzn-ft__w{font-family:var(--display);font-weight:900;font-size:24px;color:#fff;text-transform:uppercase}
.hzn-ft__w b{color:var(--gold)}
.hzn-ft p{font-size:14px;max-width:320px;margin:10px 0 0}
.hzn-ft__col h4{color:#fff;font-family:var(--body);font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}
.hzn-ft__col a{display:block;color:var(--text);font-size:14px;margin:7px 0;text-decoration:none}
.hzn-ft__col a:hover{color:var(--gold)}
.hzn-ft__bot{border-top:1px solid var(--line-sub);text-align:center;font-size:12.5px;color:var(--muted);padding:18px}

/* listas/arquivo */
.hzn-archive{padding:40px 0 64px}
.hzn-archive__h{font-size:34px;margin-bottom:8px}
.hzn-archive__sub{color:var(--text);margin-bottom:32px}

/* paginacao */
.hzn-archive .nav-links,.hzn-wrap .nav-links{display:flex;gap:10px;flex-wrap:wrap}
.hzn-wrap .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--text);text-decoration:none}
.hzn-wrap .page-numbers.current{background:var(--gold);border-color:var(--gold);color:var(--ink-inv);font-weight:700}
.hzn-wrap .page-numbers:hover{border-color:var(--gold);color:var(--gold);text-decoration:none}

/* skip link (a11y) */
.hzn-skip{position:absolute;left:-9999px;top:0;background:var(--gold-dp);color:var(--ink-inv);padding:12px 16px;z-index:9999;border-radius:0 0 10px 0;font-weight:600}
.hzn-skip:focus{left:0}
