/* ===== GNDM · CSS dos widgets do blog (marcação REAL do tema) · herda home.css =====
   Fonte da verdade dos blocos no stack estático (skill gndm-static).
   Estiliza as classes reais que vêm do content.rendered do WP -> migração é passthrough.
   Barreira gráfica #1 (2026-07-14): kit inicial usava classes inventadas; tema real usa
   w-bluf-eb / w-def-key / w-vs-verdict / w-psp-cell / w-faq-q. Corrigido.
   Redesign #2 (2026-07-14, /impeccable): layout "prosa + breakout" (mata vão lateral),
   punch de contraste nos widgets, quote editorial, e correção de 2 bans do impeccable
   (gradient-text no stat, side-stripe no psp/bluf). */

/* ---------- artigo: grid prosa + breakouts (texto legível, widgets largos) ---------- */
.post {
  display: grid;
  grid-template-columns:
    [full-start] minmax(1.25rem, 1fr)
    [wide-start] minmax(0, 6.5rem)
    [text-start] min(66ch, 100%) [text-end]
    minmax(0, 6.5rem) [wide-end]
    minmax(1.25rem, 1fr) [full-end];
  padding-block: 7rem clamp(3.5rem, 8vh, 6rem);
  line-height: 1.8;
}
.post > * { grid-column: text; min-width: 0; }
.post h1 { font-size: clamp(2.1rem, 5.2vw, 3.4rem); line-height: 1.03; margin: 0 0 1rem; letter-spacing: .01em; text-wrap: balance; }
.post .wp-block-heading, .post h2 { font-family: var(--display); font-size: clamp(1.55rem, 3.2vw, 2.25rem); line-height: 1.15; margin: 3rem 0 1rem; letter-spacing: .005em; }
.post h3.wp-block-heading, .post h3 { font-family: var(--display); font-size: 1.28rem; margin: 2.1rem 0 .7rem; }
.post p, .post .wp-block-paragraph { margin-bottom: 1.15rem; color: var(--osso); font-size: 1.05rem; }
.post ul.wp-block-list, .post ol.wp-block-list { margin: .4rem 0 1.4rem 1.3rem; display: grid; gap: .55rem; color: var(--osso); font-size: 1.02rem; }
.post a { color: var(--gold); border-bottom: 1px solid oklch(80% 0.16 84 / .34); }
.post a:hover { border-bottom-color: var(--gold); }
.post strong, .post b { color: var(--osso); font-weight: 400; }
.post small { color: var(--osso-70); font-size: .82rem; }
.post code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .88em; background: var(--ceu-2); padding: .1em .35em; border-radius: 5px; }
.post > .w { margin: 2.6rem 0; }

/* breakout: widgets de peso e imagens ganham a banda larga */
.post > .w-stat, .post > .w-quote, .post > .w-poll, .post > .w-cta,
.post > .w-pros, .post > .w-vs, .post > .w-psp, .post > .w-compare,
.post > figure.wp-block-image { grid-column: wide; }
.post__hero { grid-column: wide; margin: 0 0 2.6rem; }

/* ---------- cabeçalho do post ---------- */
.post-eyebrow { grid-column: text; font-family: var(--display); font-size: .76rem; letter-spacing: .2em; color: var(--fogo); text-transform: uppercase; margin-bottom: .2rem; }
.post-eyebrow a { color: var(--fogo); border: 0; }
.post-meta { font-size: .85rem; color: var(--osso-70); margin: .6rem 0 1.8rem; }
.post__hero img { width: 100%; aspect-ratio: 16 / 8; object-fit: cover; border-radius: var(--r-card); border: 1px solid var(--fio); display: block; }
.post__back { display: inline-block; margin-top: 3rem; font-family: var(--display); font-size: .82rem; letter-spacing: .06em; color: var(--osso-70); text-transform: uppercase; }
.post__back:hover { color: var(--gold); }

/* barra de progresso de leitura (injetada por blog.js) */
.rp-bar { position: fixed; top: 0; left: 0; height: 3px; width: 0; z-index: 60; background: var(--grad-fogo); transition: width .1s linear; }

/* ===== WIDGETS (W-01..W-12) · PORTADOS FIEL DO TEMA WP "muito legais" (2026-07-14) =====
   Linguagem: cards de PAPEL claro flutuando na página escura + rótulos ABeeZee pequenos
   uppercase tracked (o "mono") + acento por categoria (--w-accent) + âncoras roxas
   (stat/verdict/psp-hd/cta). Origem: wp-post.css do tema gui-loureiro. Reproduz o design
   original em vez das minhas versões navy inferiores. --w-accent vem por post (categoria). */
.post {
  --c-ink: #14101C; --c-title: #412985; --c-paper: #F7F5F2; --c-paper-2: #FFFFFF;
  --c-magenta: #E8187A; --c-purple: #2E1A5F; --c-lilac: #7E5BEF; --c-cyan: #00B4C4;
  --c-amber: #F5B400; --c-coral: #FF7849; --c-leaf: #54D88B;
  --c-mid: rgba(20,16,28,0.70); --c-dim: rgba(20,16,28,0.45); --c-faint: rgba(20,16,28,0.28);
  --c-hair: rgba(20,16,28,0.10); --c-hair-strong: rgba(20,16,28,0.20);
  --f-disp: 'Anta','Arial Narrow',system-ui,sans-serif; --f-body: 'ABeeZee',Georgia,system-ui,serif;
  --f-mono: 'ABeeZee',ui-monospace,monospace; --tk-caps-sm: 0.20em; --tk-caps-md: 0.12em;
  --stage-accent: #E8187A; --w-accent: var(--stage-accent);
}

/* rótulo de widget */
.w-tag { display:inline-flex; align-items:center; gap:8px; font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--w-accent); margin-bottom:14px; }
.w-tag::before { content:""; width:24px; height:1px; background:var(--w-accent); }
.w-tag .ico { width:14px; height:14px; display:inline-flex; align-items:center; justify-content:center; }

/* W-01 · BLUF */
.w-bluf { padding:28px 32px; background:linear-gradient(180deg, color-mix(in srgb,var(--w-accent) 10%,var(--c-paper)) 0%, var(--c-paper) 100%); border:1px solid color-mix(in srgb,var(--w-accent) 25%,transparent); border-radius:18px; position:relative; overflow:hidden; }
.w-bluf::before { content:""; position:absolute; top:0; left:0; bottom:0; width:5px; background:var(--w-accent); }
.w-bluf .w-bluf-eb { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--w-accent); margin-bottom:12px; display:flex; align-items:center; gap:8px; }
.w-bluf .w-bluf-eb b { font-weight:400; background:var(--w-accent); color:#fff; padding:2px 6px; border-radius:4px; font-size:9.5px; }
.w-bluf p { font-family:var(--f-body); font-size:21px; line-height:1.45; color:var(--c-ink); max-width:56ch; margin:0; }
.w-bluf p strong { background:none; font-weight:400; color:var(--w-accent); }
.w-bluf .w-bluf-meta { margin-top:16px; padding-top:14px; border-top:1px dashed var(--c-hair-strong); display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--c-dim); }
.w-bluf .w-bluf-updated { color:var(--c-mid); }

/* W-02 · def */
.w-def { padding:22px 26px; background:var(--c-paper); border:1px dashed var(--c-hair-strong); border-radius:12px; display:grid; grid-template-columns:auto 1fr; gap:20px; align-items:start; }
.w-def .w-def-key, .w-def .w-def-term { font-family:var(--f-disp); font-size:13px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--w-accent); padding:6px 12px; border:1.5px solid var(--w-accent); border-radius:999px; align-self:start; white-space:nowrap; }
.w-def .w-def-body, .w-def .w-def-text { font-family:var(--f-body); font-size:16px; line-height:1.55; color:var(--c-ink); }
.w-def .w-def-body em { color:var(--c-mid); }
.w-def .w-def-body small { display:block; margin-top:8px; font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--c-dim); }

/* W-03 · steps */
.w-steps { padding:28px 32px; background:var(--c-paper); border:1px solid var(--c-hair); border-radius:18px; }
.w-steps > h4, .w-steps-head { font-family:var(--f-disp); font-size:22px; text-transform:uppercase; letter-spacing:-.012em; margin:0 0 20px; color:var(--c-ink); }
.w-steps ol, .w-steps-list { list-style:none; padding:0; margin:0; counter-reset:step; display:grid; gap:16px; }
.w-steps li { display:grid; grid-template-columns:auto 1fr; gap:16px; align-items:start; counter-increment:step; }
.w-steps li::before, .w-steps-num { content:counter(step,decimal-leading-zero); font-family:var(--f-disp); font-size:18px; color:var(--w-accent); background:color-mix(in srgb,var(--w-accent) 12%,transparent); border:1px solid color-mix(in srgb,var(--w-accent) 35%,transparent); border-radius:999px; width:42px; height:42px; display:flex; align-items:center; justify-content:center; flex-shrink:0; box-shadow:none; }
.w-steps li b, .w-steps li > div > b { display:block; font-family:var(--f-disp); font-size:15px; text-transform:uppercase; letter-spacing:-.005em; font-weight:400; margin-bottom:4px; color:var(--c-ink); }
.w-steps li span, .w-steps-content { font-family:var(--f-body); font-size:16px; line-height:1.5; color:var(--c-mid); display:block; }

/* W-04 · quote (editorial · hairlines + display uppercase + aspas grandes) */
/* W-04 · quote (itálico + centralizada + legível · aspas grandes no acento) */
.w-quote { text-align:center; padding:2.8rem clamp(1rem,4vw,2.5rem); border-top:1px solid var(--fio); border-bottom:1px solid var(--fio); position:relative; }
.w-quote::before { content:"\201C"; display:block; font-family:var(--f-disp); font-size:clamp(3rem,7vw,4.5rem); line-height:.6; color:var(--w-accent); margin-bottom:.2em; }
.w-quote blockquote { margin:0 auto; max-width:34ch; font-family:var(--f-body); font-style:italic; font-size:clamp(1.4rem,2.9vw,2.05rem); line-height:1.36; letter-spacing:0; text-transform:none; color:var(--osso); }
.w-quote blockquote em { color:var(--w-accent); font-style:italic; font-weight:700; }
.w-quote blockquote strong { color:var(--w-accent); font-weight:700; }
.w-quote cite { display:block; margin-top:1.3rem; font-family:var(--f-mono); font-size:.8rem; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--gold); font-style:normal; }
.w-quote-by { display:flex; align-items:center; justify-content:center; gap:11px; margin-top:1.4rem; }
.w-quote-by cite { margin-top:0; text-align:left; }
.w-quote-av { width:40px; height:40px; border-radius:50%; object-fit:cover; flex:none; border:1px solid var(--c-hair); }
.w-quote-av--mono { display:grid; place-items:center; font-family:var(--f-disp); font-size:.74rem; letter-spacing:.02em; color:#fff; background:var(--w-accent); border:0; }

/* W-05 · compare */
.w-compare-tbl, .w-compare-table { width:100%; border-collapse:collapse; font-family:var(--f-body); font-size:15px; background:var(--c-paper); border:1px solid var(--c-hair); border-radius:14px; overflow:hidden; color:var(--c-ink); }
.w-compare-tbl th, .w-compare-tbl td, .w-compare-table th, .w-compare-table td { padding:14px 18px; text-align:left; border-bottom:1px solid var(--c-hair); vertical-align:top; }
.w-compare-tbl th { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--c-mid); background:rgb(20 16 28 / .03); font-weight:400; }
.w-compare-tbl th:first-child { color:var(--w-accent); }
.w-compare-tbl td:first-child { font-family:var(--f-disp); font-size:13px; text-transform:uppercase; letter-spacing:-.005em; background:rgb(20 16 28 / .02); width:24%; }
.w-compare-tbl tr:last-child td { border-bottom:0; }
.w-compare-tbl tbody tr:last-child td { background:color-mix(in srgb,var(--w-accent) 8%,var(--c-paper)); }
.w-compare-tbl tbody tr:last-child td:first-child { color:var(--w-accent); }

/* W-06 · pros/cons */
.w-pros { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.w-pros-col { padding:24px 26px; border-radius:14px; background:var(--c-paper); border:1px solid var(--c-hair); }
.w-pros-col.pro { border-color:color-mix(in srgb,var(--c-leaf) 35%,transparent); background:linear-gradient(180deg,color-mix(in srgb,var(--c-leaf) 6%,var(--c-paper)),var(--c-paper)); }
.w-pros-col.con { border-color:color-mix(in srgb,var(--c-coral) 35%,transparent); background:linear-gradient(180deg,color-mix(in srgb,var(--c-coral) 6%,var(--c-paper)),var(--c-paper)); }
.w-pros-col h5 { font-family:var(--f-mono); font-size:11px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; margin:0 0 14px; display:flex; align-items:center; gap:8px; }
.w-pros-col.pro h5 { color:#2d8557; }
.w-pros-col.con h5 { color:#c64a1d; }
.w-pros-col h5 .b { width:18px; height:18px; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-family:var(--f-disp); font-size:13px; }
.w-pros-col.pro h5 .b { background:color-mix(in srgb,var(--c-leaf) 25%,transparent); color:#2d8557; }
.w-pros-col.con h5 .b { background:color-mix(in srgb,var(--c-coral) 25%,transparent); color:#c64a1d; }
.w-pros-col ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.w-pros-col ul li { font-family:var(--f-body); font-size:15px; line-height:1.5; color:var(--c-ink); padding-left:22px; position:relative; }
.w-pros-col.pro ul li::before { content:"+"; position:absolute; left:0; top:0; color:#2d8557; font-family:var(--f-disp); font-size:16px; }
.w-pros-col.con ul li::before { content:"\2212"; position:absolute; left:0; top:0; color:#c64a1d; font-family:var(--f-disp); font-size:16px; }

/* W-07 · A vs B */
.w-vs { background:var(--c-paper); border:1px solid var(--c-hair); border-radius:18px; overflow:hidden; }
.w-vs-head { display:grid; grid-template-columns:1fr auto 1fr; align-items:stretch; border-bottom:1px solid var(--c-hair); margin:0; }
.w-vs-side { padding:22px 26px; display:flex; flex-direction:column; gap:6px; justify-content:center; min-height:96px; border:0; border-radius:0; }
.w-vs-side.A { background:rgb(20 16 28 / .03); }
.w-vs-side.B { background:color-mix(in srgb,var(--w-accent) 7%,transparent); text-align:right; }
.w-vs-side .lbl { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--c-dim); margin:0; }
.w-vs-side h4 { font-family:var(--f-disp); font-size:22px; text-transform:uppercase; letter-spacing:-.012em; line-height:1; color:var(--c-ink); margin:0; }
.w-vs-side.B h4 { color:var(--w-accent); }
.w-vs-mid { display:flex; align-items:center; justify-content:center; font-family:var(--f-disp); font-size:18px; color:var(--c-faint); width:64px; border-left:1px solid var(--c-hair); border-right:1px solid var(--c-hair); background:#fff; letter-spacing:-.04em; }
.w-vs-row { display:grid; grid-template-columns:1fr auto 1fr; border-top:0; border-bottom:1px solid var(--c-hair); font-family:var(--f-body); font-size:14.5px; line-height:1.45; padding:0; text-align:left; color:var(--c-ink); }
.w-vs-row:last-child { border-bottom:0; }
.w-vs-row > div { padding:14px 26px; }
.w-vs-row > div:first-child { color:var(--c-mid); }
.w-vs-row > div:last-child { text-align:right; color:var(--c-ink); }
.w-vs-row .crit { display:flex; align-items:center; justify-content:center; width:64px; font-family:var(--f-mono); font-size:9.5px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--c-dim); border-left:1px solid var(--c-hair); border-right:1px solid var(--c-hair); padding:0 4px; text-align:center; }
.w-vs-verdict { margin:0; padding:18px 26px; background:var(--c-title); color:#F5F0F0; display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; font-family:var(--f-mono); font-size:11px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; border:0; border-radius:0; }
.w-vs-verdict b { color:var(--w-accent); font-weight:400; }

/* W-08 · stat (âncora escura roxa · número gigante) */
.w-stat { display:grid; grid-template-columns:auto 1fr; gap:32px; align-items:center; padding:28px 32px; background:var(--c-title); color:#F5F0F0; border-radius:18px; border:0; }
.w-stat .num, .w-stat-num { font-family:var(--f-disp); font-size:clamp(56px,8vw,96px); line-height:.9; letter-spacing:-.04em; color:var(--w-accent); }
.w-stat .num sup, .w-stat-num sup { font-size:.4em; color:#F5F0F0; vertical-align:top; letter-spacing:0; margin-left:6px; }
.w-stat .body, .w-stat-desc { font-family:var(--f-body); font-size:17px; line-height:1.5; color:rgb(245 240 240 / .85); }
.w-stat .body strong { font-weight:400; color:#fff; background:none; }
.w-stat .src, .w-stat-label { display:block; margin-top:10px; font-family:var(--f-mono); font-size:10px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:rgb(245 240 240 / .5); }

/* W-09 · PSP (papel + header escuro + 3 células) */
.w-psp { background:var(--c-paper); border:1px solid var(--c-hair); border-radius:18px; overflow:hidden; }
.w-psp-hd { padding:20px 26px; background:var(--c-title); color:#F5F0F0; display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; margin:0; }
.w-psp-hd .ttl { font-family:var(--f-disp); font-size:18px; text-transform:uppercase; letter-spacing:-.005em; }
.w-psp-hd .meta { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:rgb(245 240 240 / .55); }
.w-psp-hd .meta b { color:var(--w-accent); font-weight:400; }
.w-psp-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.w-psp-cell { padding:24px 26px; border:0; border-right:1px solid var(--c-hair); border-radius:0; background:transparent; display:flex; flex-direction:column; gap:12px; }
.w-psp-cell:last-child { border-right:0; }
.w-psp-cell .step { font-family:var(--f-mono); font-size:10px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--w-accent); display:flex; align-items:center; gap:10px; padding:0; background:none; border-radius:0; margin:0; }
.w-psp-cell:nth-child(2) .step, .w-psp-cell:nth-child(3) .step { color:var(--w-accent); background:none; }
.w-psp-cell .step b { width:22px; height:22px; border-radius:50%; background:var(--w-accent); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:11px; font-weight:400; }
.w-psp-cell h5 { font-family:var(--f-disp); font-size:15px; text-transform:uppercase; letter-spacing:-.005em; color:var(--c-ink); margin:0; }
.w-psp-cell p { font-family:var(--f-body); font-size:14px; line-height:1.5; color:var(--c-mid); margin:0; }

/* W-10 · poll */
.w-poll { padding:24px 28px; background:var(--c-paper); border:1px solid var(--c-hair); border-radius:16px; }
.w-poll h4 { font-family:var(--f-disp); font-size:18px; text-transform:uppercase; letter-spacing:-.005em; margin:0 0 6px; color:var(--c-ink); }
.w-poll .sub { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--c-dim); margin-bottom:18px; }
.w-poll .opts { display:flex; flex-direction:column; gap:10px; }
.w-poll .opt { display:grid; grid-template-columns:1fr auto; justify-content:space-between; align-items:center; gap:14px; padding:12px 16px; border:1px solid var(--c-hair); border-radius:10px; background:var(--c-paper-2); font-family:var(--f-body); font-size:15px; color:var(--c-ink); position:relative; overflow:hidden; }
.w-poll .opt .bar { position:absolute; top:0; left:0; bottom:0; background:color-mix(in srgb,var(--w-accent) 14%,transparent); width:0%; transition:width .6s cubic-bezier(.16,1,.3,1); z-index:0; }
.w-poll .opt span:first-child { position:relative; z-index:1; }
.w-poll .opt .pct { position:relative; z-index:1; font-family:var(--f-mono); font-size:11px; color:var(--w-accent); letter-spacing:var(--tk-caps-md); }
.w-poll .opt:hover { border-color:var(--w-accent); }
.w-poll .meta { margin-top:14px; font-family:var(--f-mono); font-size:10px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--c-dim); }
/* enquete interativa (JS em blog.js): % escondido até votar */
.w-poll .opt { cursor:pointer; transition:border-color .2s ease; }
.w-poll:not(.is-done) .opt .pct { visibility:hidden; }
.w-poll:not(.is-done) .opt::after { content:""; position:absolute; right:16px; z-index:1; width:14px; height:14px; border:1.5px solid var(--c-hair-strong); border-radius:50%; }
.w-poll .opt.is-voted { border-color:var(--w-accent); }
.w-poll .opt.is-voted .bar { background:color-mix(in srgb,var(--w-accent) 22%,transparent); }
.w-poll .opt.is-voted .pct { color:var(--w-accent); font-weight:700; }
.w-poll.is-done .opt { cursor:default; }
.w-poll .opt:focus-visible { outline:2px solid var(--w-accent); outline-offset:2px; }

/* W-11 · FAQ (sem card · header com régua grossa + itens com hairline) */
.w-faq-head { display:flex; justify-content:space-between; align-items:end; padding-bottom:16px; border-bottom:1.5px solid var(--osso); margin-bottom:0; gap:14px; }
.w-faq-head h4 { font-family:var(--f-disp); font-size:24px; text-transform:uppercase; letter-spacing:-.012em; line-height:1; margin:0; color:var(--osso); }
.w-faq-head .meta { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--osso-70); display:flex; align-items:center; gap:10px; }
.w-faq-head .meta b { color:var(--w-accent); font-weight:400; }
.w-faq-list { display:flex; flex-direction:column; gap:0; }
.w-faq-item { border:0; border-bottom:1px solid var(--fio); border-radius:0; background:transparent; }
.w-faq-q { width:100%; text-align:left; padding:18px 0; display:grid; grid-template-columns:auto 1fr auto; justify-content:space-between; align-items:center; gap:14px; font-family:var(--f-body); font-size:15.5px; line-height:1.4; color:var(--osso); cursor:pointer; background:none; border:0; }
.w-faq-q .num { font-family:var(--f-mono); font-size:10.5px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; color:var(--osso-70); min-width:28px; }
.w-faq-q .q { flex:1; font-family:var(--f-body); }
.w-faq-q .toggle { width:24px; height:24px; border-radius:50%; border:1px solid var(--osso-70); display:inline-flex; align-items:center; justify-content:center; font-family:var(--f-disp); font-size:14px; color:var(--osso); transition:all .2s ease; flex-shrink:0; }
.w-faq-item.is-open .w-faq-q .toggle { background:var(--w-accent); color:#fff; border-color:var(--w-accent); transform:rotate(45deg); }
.w-faq-a { max-height:0; overflow:hidden; transition:max-height .35s ease; }
.w-faq-item.is-open .w-faq-a { max-height:1200px; }
.w-faq-a-in { padding:0 0 22px 42px; font-family:var(--f-body); font-size:15px; line-height:1.55; color:var(--osso-70); max-width:62ch; }

/* W-12 · CTA (âncora escura · gradiente roxo + glow magenta) */
.w-cta { padding:32px 36px; border-radius:18px; background:linear-gradient(135deg,var(--c-purple),var(--c-title)); color:#F5F0F0; display:flex; flex-direction:column; gap:20px; position:relative; overflow:hidden; border:0; text-align:left; }
.w-cta::before { content:""; position:absolute; top:-60px; right:-40px; width:240px; height:240px; background:radial-gradient(circle,var(--w-accent),transparent 70%); opacity:.45; }
.w-cta .eb { font-family:var(--f-mono); font-size:11px; letter-spacing:var(--tk-caps-sm); text-transform:uppercase; color:var(--c-amber); margin-bottom:2px; display:flex; align-items:center; gap:10px; position:relative; }
.w-cta .eb::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--c-amber); box-shadow:0 0 12px var(--c-amber); }
.w-cta h3 { font-family:var(--f-disp); font-size:clamp(22px,2.4vw,30px); line-height:1.04; letter-spacing:-.018em; text-transform:uppercase; position:relative; margin:0; }
.w-cta h3 em { color:var(--w-accent); font-style:normal; }
.w-cta p { margin:0; font-family:var(--f-body); font-size:14px; line-height:1.5; color:rgb(245 240 240 / .78); position:relative; max-width:44ch; }
/* botão sempre em pill branco (alto contraste nas 8 cores de acento; acento vive no glow) */
.w-cta__link, .w-cta .form a.w-cta__link { display:inline-flex; align-items:center; gap:9px; align-self:flex-start; text-decoration:none; padding:13px 26px; border-radius:999px; background:#fff; color:var(--c-ink); font-family:var(--f-mono); font-size:12px; letter-spacing:var(--tk-caps-md); text-transform:uppercase; transition:.18s; box-shadow:0 8px 30px color-mix(in srgb,var(--w-accent) 45%,transparent); position:relative; border:0; }
.w-cta__link::after { content:"→"; font-size:14px; color:var(--w-accent); transition:transform .18s; }
.w-cta__link:hover { background:#fff; transform:translateY(-2px); box-shadow:0 12px 42px color-mix(in srgb,var(--w-accent) 62%,transparent); }
.w-cta__link:hover::after { transform:translateX(3px); }

/* ===== destaque: NEGRITO + cor da categoria em tudo que usa o acento (pedido do Gui) =====
   Também conserta o bug do `.post strong{color:osso}` (claro) vazando pros widgets de papel:
   dentro de widget claro, strong/b vira acento (visível + destacado); em widget escuro, branco. */
.w-bluf strong, .w-bluf b, .w-def strong, .w-def b, .w-steps strong, .w-steps b,
.w-compare-tbl strong, .w-compare-tbl b, .w-pros-col strong, .w-pros-col b,
.w-poll strong, .w-poll b, .w-vs strong, .w-vs b, .w-psp strong, .w-psp b,
.w-faq strong, .w-faq b {
  color: var(--w-accent); font-weight: 700; background: none;
}
/* widgets escuros (papel invertido): strong/b em branco */
.w-stat .body strong, .w-stat .body b, .w-cta strong, .w-cta b { color: #fff; font-weight: 700; }
/* negrita os rótulos/labels que já são da cor do acento */
.w-tag, .w-bluf-eb, .w-bluf-eb b, .w-steps li::before, .w-steps-num,
.w-compare-tbl th:first-child, .w-compare-tbl tbody tr:last-child td:first-child,
.w-vs-side.B h4, .w-vs-verdict b, .w-psp-cell .step, .w-psp-cell .step b,
.w-poll .opt .pct, .w-faq-head .meta b, .w-cta h3 em { font-weight: 700; }

@media (max-width:1080px){ .w-pros { grid-template-columns:1fr; } }
@media (max-width:720px){
  .w-stat { grid-template-columns:1fr; }
  .w-stat .num { font-size:64px; }
  .w-vs-head, .w-vs-row { grid-template-columns:1fr; }
  .w-vs-mid, .w-vs-row .crit { display:none; }
  .w-vs-side.B { text-align:left; }
  .w-psp-grid { grid-template-columns:1fr; }
  .w-psp-cell { border-right:0; border-bottom:1px solid var(--c-hair); }
  .w-psp-cell:last-child { border-bottom:0; }
  .w-def { grid-template-columns:1fr; }
}

/* imagens no corpo ---------- */
.post figure.wp-block-image { margin: 2.6rem 0; }
.post .wp-block-image img { width: 100%; height: auto; border-radius: var(--r-card); border: 1px solid var(--fio); display: block; }
.post .wp-block-image { margin: 2.6rem 0; }
.post .wp-block-image figcaption { margin-top: .7rem; font-size: .82rem; line-height: 1.4; color: var(--osso-70); text-align: center; font-style: italic; }
.post .inline-vfx img { box-shadow: 0 24px 60px -20px color-mix(in oklab, var(--w-accent) 45%, transparent); }
.post .wp-element-caption, .post figcaption { margin-top: .6rem; font-size: .82rem; color: var(--osso-70); text-align: center; }
.post .wp-block-table table { width: 100%; border-collapse: collapse; font-size: .96rem; margin: 1rem 0; }
.post .wp-block-table td, .post .wp-block-table th { border: 1px solid var(--fio); padding: .7rem .9rem; }
.post .wp-block-button__link { display: inline-block; padding: .9rem 2rem; border-radius: var(--r-pill); font-family: var(--display);
  color: #fff; background: var(--grad-fogo); }

/* banda newsletter (fecha todo post/índice) */
.nl-band { grid-column: wide; margin: 3.5rem 0 0; padding: 2.4rem clamp(1.5rem, 5vw, 3rem); border-radius: var(--r-card); text-align: center;
  background: radial-gradient(120% 160% at 50% 0%, oklch(70% 0.19 40 / .16), transparent 62%), var(--ceu-2); border: 1px solid var(--fio); }
.nl-band h3 { font-family: var(--display); font-size: clamp(1.5rem, 3vw, 2rem); margin: 0 0 .6rem; }
.nl-band p { color: var(--osso-70); max-width: 44ch; margin: 0 auto 1.4rem; }
.nl-band__cta { display: inline-block; padding: .9rem 2.1rem; border-radius: var(--r-pill); font-family: var(--display); color: #fff; background: var(--grad-fogo); }

/* mobile/tablet: colapsa o grid de breakout p/ 1 coluna com padding (mata overflow) */
@media (max-width: 820px) {
  .post {
    grid-template-columns:
      [full-start] clamp(1rem, 4vw, 2rem)
      [wide-start text-start] minmax(0, 1fr) [text-end wide-end]
      clamp(1rem, 4vw, 2rem) [full-end];
  }
  .post__hero, .post > .w-stat, .post > .w-quote, .post > .w-poll, .post > .w-cta,
  .post > .w-pros, .post > .w-vs, .post > .w-psp, .post > .w-compare,
  .post > figure.wp-block-image, .nl-band { grid-column: text; }
}
/* tabela de comparação: rola dentro da própria caixa em telas estreitas (nunca estoura a página) */
.post > .w-compare { overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 700px) { .w-compare-tbl, .w-compare-table { min-width: 540px; } }
@media (max-width: 640px) {
  .w-pros, .w-vs-head { grid-template-columns: 1fr; }
  .w-vs-mid { display: none; }
  .w-vs-row { grid-template-columns: 1fr; gap: .2rem; text-align: left; }
  .w-stat { flex-direction: column; align-items: flex-start; gap: .8rem; }
  .w-faq-a-in { padding-left: 1.4rem; }
  .post { padding-top: 5.5rem; }
}

/* ===================== Biblioteca Completa (índice do GNDM) ===================== */
/* hero visual (imagem + tint magenta) */
.lib-hero { position: relative; min-height: 78vh; display: grid; align-items: end; overflow: hidden; padding: 8rem clamp(1.25rem,5vw,4rem) clamp(3rem,7vh,5rem); }
.lib-hero__bg { position: absolute; inset: 0; background-size: cover; background-position: 68% 42%; z-index: 0; }
.lib-hero__bg::after { content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, oklch(11% 0.022 295 / .35) 0%, oklch(11% 0.022 295 / .55) 45%, var(--ceu) 100%),
              radial-gradient(120% 90% at 15% 100%, oklch(58% 0.24 356 / .38), transparent 60%); }
.lib-hero__in { position: relative; z-index: 1; max-width: 56rem; }
.lib-hero__eb { display: inline-flex; align-items: center; gap: .55rem; font-family: var(--display); font-size: .78rem; letter-spacing: .18em; color: var(--osso); text-transform: uppercase; margin-bottom: 1.2rem; }
.lib-hero__eb::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--fogo); box-shadow: 0 0 12px var(--fogo); }
.lib-hero h1 { font-family: var(--display); font-size: clamp(2.7rem,8vw,5.4rem); line-height: .94; margin: 0 0 1.3rem; letter-spacing: .01em; text-transform: uppercase; }
/* DEFINITIVO: gradiente-assinatura do Gui nas 4 cores das categorias (identidade WP · pedido do Gui) */
.lib-hero h1 .em { background: linear-gradient(90deg,#F5B400 0%,#E8187A 48%,#7E5BEF 78%,#D4A0FF 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: #D4A0FF; }
.lib-hero__sub { font-size: clamp(1.05rem,2.2vw,1.3rem); color: var(--osso); line-height: 1.55; max-width: 44rem; margin: 0; }

/* bento de categorias (destaque + cor + capa do último post por categoria) */
.bento-wrap { max-width: 74rem; margin: 3.25rem auto 4rem; padding: 0 clamp(1.25rem,5vw,3rem); position: relative; z-index: 2; }
.bento-wrap__h { font-family: var(--display); font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: var(--osso-70); margin: 0 0 1.1rem; }
.bento { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.bento__tile { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 1.2rem; min-height: 10rem;
  padding: 1.3rem 1.4rem; border-radius: var(--r-card); background: var(--ceu-2); border: 1px solid var(--fio); overflow: hidden; isolation: isolate;
  transition: transform .2s var(--easa), border-color .2s var(--easa); }
.bento__bg { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center; opacity: .34; transition: opacity .3s var(--easa), transform .4s var(--easa); }
.bento__tile::before { content: ""; position: absolute; inset: 0; z-index: 1; transition: opacity .2s var(--easa);
  background: linear-gradient(180deg, oklch(11% 0.022 295 / .15), oklch(11% 0.022 295 / .82)),
              radial-gradient(130% 120% at 100% 0%, color-mix(in srgb, var(--cat) 42%, transparent), transparent 55%); }
.bento__tile:hover { transform: translateY(-3px); border-color: var(--cat); }
.bento__tile:hover .bento__bg { opacity: .5; transform: scale(1.05); }
.bento__tile:nth-child(1), .bento__tile:nth-child(4), .bento__tile:nth-child(7), .bento__tile:nth-child(8) { grid-column: span 2; }
.bento__top { position: relative; z-index: 2; display: flex; align-items: center; gap: .6rem; }
.bento__dot { width: 11px; height: 11px; border-radius: 50%; background: var(--cat); box-shadow: 0 0 10px var(--cat); flex: none; }
.bento__cat { font-family: var(--display); font-size: 1.08rem; color: var(--osso); line-height: 1.15; }
.bento__count { margin-left: auto; font-family: var(--display); font-size: .82rem; color: var(--cat); }
.bento__last { position: relative; z-index: 2; font-size: .86rem; color: var(--osso); line-height: 1.4; }
.bento__last b { display: block; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: var(--cat); opacity: .9; margin-bottom: .25rem; font-family: var(--display); font-weight: 400; }
@media (max-width: 760px) { .bento { grid-template-columns: 1fr 1fr; } .bento__tile, .bento__tile:nth-child(n) { grid-column: auto; } }
@media (max-width: 460px) { .bento { grid-template-columns: 1fr; } }

/* post-líder (destaque do índice) */
.lib-lead { max-width: 72rem; margin: 1rem auto 3rem; padding: 0 clamp(1.25rem,5vw,3rem); }
.lib-lead a { display: grid; grid-template-columns: 1.15fr 1fr; gap: 0; border-radius: var(--r-card); overflow: hidden; border: 1px solid var(--fio); background: var(--ceu-2); transition: border-color .2s var(--easa); }
.lib-lead a:hover { border-color: var(--fogo); }
.lib-lead__img { position: relative; min-height: 20rem; }
.lib-lead__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lib-lead__txt { padding: clamp(1.5rem,3vw,2.6rem); display: flex; flex-direction: column; justify-content: center; }
.lib-lead__eb { font-family: var(--display); font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: var(--fogo); margin-bottom: .8rem; }
.lib-lead__txt h2 { font-family: var(--display); font-size: clamp(1.5rem,3vw,2.2rem); line-height: 1.1; margin: 0 0 .8rem; color: var(--osso); }
.lib-lead__txt p { color: var(--osso-70); font-size: 1rem; line-height: 1.55; margin: 0 0 1rem; }
.lib-lead__go { font-family: var(--display); font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; color: var(--gold); }

/* seções por categoria */
.lib-sec { max-width: 72rem; margin: 0 auto; padding: 2.6rem clamp(1.25rem,5vw,3rem); }
.lib-sec__h { font-family: var(--display); font-size: clamp(1.3rem,2.6vw,1.7rem); margin: 0 0 1.6rem; display: flex; align-items: baseline; gap: .7rem; scroll-margin-top: 5rem; }
.lib-sec__h span { font-size: .78rem; color: var(--osso-70); font-family: var(--display); letter-spacing: .06em; }
.lib-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 1.3rem; }
.lib-card { display: flex; flex-direction: column; border-radius: var(--r-card); overflow: hidden;
  background: var(--ceu-2); border: 1px solid var(--fio); transition: border-color .2s var(--easa), transform .2s var(--easa); }
.lib-card:hover { border-color: var(--fogo); transform: translateY(-3px); }
.lib-card__img { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--ceu); }
.lib-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s var(--easa); }
.lib-card:hover .lib-card__img img { transform: scale(1.04); }
.lib-card__body { display: flex; flex-direction: column; gap: .5rem; padding: 1.2rem 1.3rem 1.3rem; flex: 1; }
.lib-card h3 { font-family: var(--display); font-size: 1.02rem; line-height: 1.25; margin: 0; color: var(--osso); }
.lib-card p { font-size: .85rem; color: var(--osso-70); line-height: 1.5; margin: 0; flex: 1; }
.lib-card__date { font-size: .7rem; color: var(--osso-70); font-family: var(--display); letter-spacing: .08em; }
@media (max-width: 700px) { .lib-lead a { grid-template-columns: 1fr; } .lib-lead__img { min-height: 12rem; aspect-ratio: 16/9; } }
@media (max-width: 480px) { .lib-grid { grid-template-columns: 1fr; } }


/* ===================== Páginas-HUB de categoria (pillar pages) ===================== */
.hub-hero { position: relative; max-width: 64rem; margin: 0 auto; padding: 8rem clamp(1.25rem,5vw,3rem) 2.5rem; overflow: hidden; }
.hub-hero::before { content: ""; position: absolute; z-index: 0; left: -8%; top: -10%; width: 55%; height: 120%; border-radius: 50%;
  background: radial-gradient(circle, var(--cat), transparent 66%); opacity: .12; filter: blur(10px); pointer-events: none; }
.hub-hero > * { position: relative; z-index: 1; }
.hub-back { display: inline-block; font-family: var(--display); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; color: var(--osso-70); margin-bottom: 1.6rem; }
.hub-back:hover { color: var(--cat); }
.hub-hero__eb { display: inline-flex; align-items: center; gap: .55rem; font-family: var(--display); font-size: .8rem; letter-spacing: .18em; text-transform: uppercase; color: var(--cat); margin-bottom: 1rem; }
.hub-hero__eb::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--cat); box-shadow: 0 0 12px var(--cat); }
.hub-hero h1 { font-family: var(--display); font-size: clamp(2.4rem,6vw,4rem); line-height: 1; margin: 0 0 1.2rem; letter-spacing: .005em; text-wrap: balance; }
.hub-hero__thesis { font-size: clamp(1.05rem,2.3vw,1.35rem); color: var(--osso); line-height: 1.55; max-width: 44rem; margin: 0 0 1.4rem; }
.hub-hero__meta { font-family: var(--display); font-size: .82rem; letter-spacing: .06em; color: var(--osso-70); }
.hub-hero__meta b { color: var(--cat); font-weight: 400; }
/* cross-nav: outros hubs (pílulas coloridas) */
.hub-others { max-width: 72rem; margin: 1rem auto 0; padding: 2.5rem clamp(1.25rem,5vw,3rem) 1rem; }
.hub-others__h { font-family: var(--display); font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: var(--osso-70); margin: 0 0 1.1rem; }
.hub-others__row { display: flex; flex-wrap: wrap; gap: .6rem; }
.hub-pill { display: inline-flex; align-items: center; gap: .5rem; font-family: var(--display); font-size: .82rem; color: var(--osso); padding: .5rem 1rem; border-radius: var(--r-pill); border: 1px solid var(--fio); transition: all .2s var(--easa); }
.hub-pill::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--pc); flex: none; }
.hub-pill:hover { border-color: var(--pc); background: color-mix(in srgb, var(--pc) 10%, transparent); }

/* tese-pilar dentro da página-hub (reusa .post/.w-*, tira o padding-top de post) */
.post.hub-pillar { padding-block: .5rem 2.5rem; }

/* ===== WIDGETS DE DESCOBERTA (Flux-inspired, estático + honesto · 2026-07-15) =====
   Resumo por IA (topo) · Pontos-chave (âncoras) · Read also (meio) ·
   Continue por aqui (relatedness real) · Próximo + Em destaque (por data). */
.post .wp-block-heading { scroll-margin-top: 1.5rem; }

/* Deck do autor (Flux: título -> deck -> imagem) */
.post > .post-deck { grid-column: text; display:flex; align-items:center; gap:13px; margin:.4rem 0 2rem; }
.post-deck__av { width:42px; height:42px; border-radius:50%; flex:none; object-fit:cover; border:1px solid var(--fio);
  box-shadow:0 0 0 3px color-mix(in oklab, var(--w-accent) 22%, transparent); }
.post-deck__m { display:flex; flex-direction:column; gap:2px; }
.post-deck__by { font-size:.92rem; color:var(--osso); }
.post-deck__by strong { font-weight:600; }
.post-deck__sub { display:flex; align-items:center; gap:8px; font-size:.8rem; color:var(--osso-70); }
.post-deck__rt { display:inline-flex; align-items:center; gap:5px; }
.post-deck__rt::before { content:""; width:13px; height:13px; border-radius:50%; border:1.5px solid currentColor; box-shadow:inset 0 -5px 0 -4px currentColor, inset -4px 0 0 -3px currentColor; opacity:.75; }
.post-deck__dot { opacity:.5; }

/* Resumo por IA — faixa gradiente destacada (Flux), revelada ao clique */
.post > .ai-sum { grid-column: wide; margin: 0 0 1.9rem; padding: 0; position: relative; overflow: hidden; border-radius: var(--r-card); }
.ai-sum__cue { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; flex-wrap:wrap;
  background:linear-gradient(100deg,#4B2E83 0%,#7E5BEF 52%,#E8187A 100%); box-shadow:0 12px 40px rgb(126 91 239 / .28); }
.ai-sum__q { font-family:var(--display); font-size:1.02rem; color:#fff; letter-spacing:.01em; text-shadow:0 1px 6px rgb(0 0 0 / .18); }
.ai-sum__btn { display:inline-flex; align-items:center; gap:8px; font-family:var(--f-mono,'ABeeZee'); font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:#3A1E6E; font-weight:700; cursor:pointer;
  background:#fff; border:0; border-radius:var(--r-pill); padding:11px 22px; transition:.18s; white-space:nowrap; box-shadow:0 6px 20px rgb(0 0 0 / .22); }
.ai-sum__btn:hover { transform:translateY(-1px); box-shadow:0 10px 28px rgb(0 0 0 / .3); }
.ai-sum.is-open .ai-sum__cue { display:none; }
.ai-sum__panel { padding:20px 24px; background:linear-gradient(180deg, color-mix(in oklab, #7E5BEF 12%, var(--ceu-2)), var(--ceu-2));
  border:1px solid color-mix(in oklab, #7E5BEF 30%, var(--fio)); border-radius:var(--r-card); border-left:3px solid #7E5BEF; animation:aiReveal .45s var(--easa); }
.ai-sum.is-loading .ai-sum__cue .ai-sum__btn { color:transparent; position:relative; }
.ai-sum.is-loading .ai-sum__cue .ai-sum__btn::after { content:""; position:absolute; inset:0; margin:auto; width:14px; height:14px; border-radius:50%; border:2px solid #0E0A16; border-top-color:transparent; animation:aiSpin .6s linear infinite; }
@keyframes aiSpin { to { transform:rotate(360deg); } }
@keyframes aiReveal { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:none; } }
.ai-sum__bar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:9px; flex-wrap:wrap; }
.ai-sum__badge { font-family: var(--display); font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color: var(--w-accent); }
.ai-sum__seal { font-family: var(--display); font-size:.6rem; letter-spacing:.1em; text-transform:uppercase; color: var(--osso-70);
  border:1px solid var(--fio); border-radius: var(--r-pill); padding:3px 10px; white-space:nowrap; }
.ai-sum__txt { margin:0; font-size:1.05rem; line-height:1.6; color: var(--osso); }

/* Share flutuante COLAPSÁVEL (botão com símbolo de share -> expande os canais) */
.share-rail { position:fixed; left:max(20px,calc((100vw - 900px)/2 - 58px)); top:50%; transform:translateY(-50%); z-index:40;
  display:flex; flex-direction:column; align-items:center; gap:10px; }
.share-rail__toggle { width:46px; height:46px; border-radius:50%; display:grid; place-items:center; cursor:pointer; padding:0;
  background:var(--gold); border:0; color:#0E0A16; box-shadow:0 8px 26px color-mix(in srgb,var(--gold) 45%,transparent); transition:.2s; }
.share-rail__toggle svg { width:20px; height:20px; fill:currentColor; }
.share-rail__toggle:hover { transform:translateY(-2px); }
.share-rail.is-open .share-rail__toggle { background:var(--ceu-2); color:var(--osso); box-shadow:none; transform:rotate(90deg); }
.share-rail__set { display:flex; flex-direction:column; align-items:center; gap:10px;
  max-height:0; opacity:0; overflow:hidden; transform:translateY(-6px); transition:max-height .3s var(--easa), opacity .25s, transform .3s var(--easa); pointer-events:none; }
.share-rail.is-open .share-rail__set { max-height:280px; opacity:1; transform:none; pointer-events:auto; }
.share-rail__b { width:40px; height:40px; border-radius:50%; display:grid; place-items:center; background:var(--ceu-2); border:1px solid var(--fio); color:var(--osso-70); cursor:pointer; transition:.18s; padding:0; }
.share-rail__b svg { width:18px; height:18px; fill:currentColor; }
.share-rail__b:hover { color:#0E0A16; background:var(--gold); border-color:transparent; transform:translateY(-2px); }
.share-rail__copy.is-done { color:#0E0A16; background:#54D88B; border-color:transparent; }
@media (max-width:1280px){
  .share-rail { left:auto; right:16px; top:auto; bottom:calc(16px + env(safe-area-inset-bottom)); transform:none; flex-direction:column-reverse; }
  .share-rail__set { flex-direction:column-reverse; }
  .share-rail.is-open .share-rail__set { max-height:280px; }
}

/* Pontos-chave — pula pra seção */
.post > .km { grid-column: wide; margin: 0 0 2.6rem; padding: 0; border-top:1px solid var(--fio); }
.km__hd { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding-top:14px; margin-bottom:4px; flex-wrap:wrap; }
.km__eb { font-family: var(--display); font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; color: var(--osso); }
.km__meta { font-size:.72rem; color: var(--osso-70); }
.km__list { list-style:none; margin:0; padding:0; display:grid; gap:0; }
.km__list li a { display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:baseline; padding:11px 8px; border-bottom:1px solid var(--fio); color: var(--osso); border:0; border-bottom:1px solid var(--fio); border-radius:8px; transition: color .18s, background .18s; }
.km__list li a:hover { color: var(--w-accent); background: color-mix(in oklab, var(--w-accent) 7%, transparent); }
.km__n { font-family: var(--display); font-size:.82rem; color: var(--w-accent); letter-spacing:.04em; }
.km__q { font-size:1.02rem; line-height:1.32; }

/* Read also — interlúdio no meio do artigo */
.post > .read-also { grid-column: text; margin: 2.6rem 0; padding: 15px 20px; display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  background: var(--ceu-2); border:1px solid var(--fio); border-left:3px solid var(--w-accent); border-radius: 12px; }
.read-also__eb { font-family: var(--display); font-size:.66rem; letter-spacing:.16em; text-transform:uppercase; color: var(--osso-70); white-space:nowrap; }
.post > .read-also a { color: var(--osso); border:0; font-size:1.04rem; line-height:1.3; font-family: var(--display); }
.post > .read-also a:hover { color: var(--w-accent); }
.read-also__arw { color: var(--w-accent); }

/* Continue por aqui + Em destaque (irmão do .post, dentro do main) */
.discover { max-width: 1180px; margin: 0 auto; padding: clamp(2.5rem,6vh,4rem) clamp(1.25rem,5vw,2.5rem) clamp(4rem,9vh,6rem);
  display:grid; grid-template-columns: 1.7fr 1fr; gap: clamp(1.8rem,4vw,3.2rem); align-items:start; border-top:1px solid var(--fio); }
.discover__t { font-family: var(--display); font-size: clamp(1.2rem,2.4vw,1.6rem); margin:0 0 1.2rem; letter-spacing:.01em; }
.disc-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: 1.1rem; }
.disc-card { display:flex; flex-direction:column; background: var(--ceu-2); border:1px solid var(--fio); border-radius: var(--r-card); overflow:hidden; text-decoration:none; transition: transform .22s var(--easa), border-color .22s; }
.disc-card:hover { transform: translateY(-4px); border-color: color-mix(in oklab, var(--osso) 22%, transparent); }
.disc-card__img { display:block; aspect-ratio: 16/10; background-size:cover; background-position:center; background-color: var(--ceu); }
.disc-card__img--none { background: linear-gradient(135deg, var(--ceu-2), var(--ceu)); }
.disc-card__body { padding: 13px 15px 17px; display:grid; gap:9px; }
.disc-card__cat { justify-self:start; font-family: var(--display); font-size:.58rem; letter-spacing:.12em; text-transform:uppercase; color: var(--c); border:1px solid color-mix(in oklab, var(--c) 55%, transparent); border-radius: var(--r-pill); padding:3px 9px; }
.disc-card__ttl { font-family: var(--display); font-size:1rem; line-height:1.22; color: var(--osso); }
.discover__side { display:grid; gap:2rem; }
.disc-lbl { display:block; font-family: var(--display); font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color: var(--osso-70); margin-bottom:.9rem; }
.disc-next .disc-card { flex-direction:row; align-items:stretch; }
.disc-next .disc-card__img { width:40%; aspect-ratio:auto; flex:none; }
.disc-next .disc-card__body { flex:1; align-content:center; }
.disc-rows { display:grid; gap:0; }
.disc-row { display:grid; grid-template-columns:auto 1fr; gap:11px; align-items:baseline; padding:11px 4px; border-bottom:1px solid var(--fio); text-decoration:none; }
.disc-row:last-child { border-bottom:0; }
.disc-row__dot { width:7px; height:7px; border-radius:50%; margin-top:.42em; flex:none; }
.disc-row__ttl { font-size:.95rem; line-height:1.3; color: var(--osso); font-family: var(--display); transition: color .18s; }
.disc-row:hover .disc-row__ttl { color: var(--gold); }
@media (max-width: 900px) {
  .discover { grid-template-columns:1fr; gap:2.6rem; }
  .disc-grid { grid-template-columns: repeat(auto-fill, minmax(200px,1fr)); }
}
@media (max-width: 560px) {
  .disc-grid { grid-template-columns:1fr 1fr; }
  .disc-next .disc-card { flex-direction:column; }
  .disc-next .disc-card__img { width:100%; aspect-ratio:16/10; }
}
