/* Refinamento de leitura e navegação. Snapshot anterior documentado em docs/rollback-ux.md. */
:root { --ink-faint: #6d6559; --section: clamp(3rem, 6vw, 5.5rem); }
.kicker, .book-status, .podcast-meta, .linkedin-post-meta, .mentoria-card h4,
.site-footer h4, .footer-bottom, .contact-list .label { font-size: 0.75rem; }
.kicker { letter-spacing: 0.12em; }
.text-link, .linkedin-post .text-link, .podcast-actions .text-link { font-size: 0.78rem; }
.text-link { display: inline-flex; align-items: center; min-height: 44px; width: fit-content; }
.site-nav { gap: clamp(1rem, 2vw, 2rem); }
.site-nav a { display: flex; align-items: center; min-height: 44px; font-size: 0.78rem; }
.section--ink .kicker { color: color-mix(in srgb, var(--paper) 78%, transparent); }
/* Subtítulos em seções escuras: o cinza de fundo claro ficava ilegível (2:1); tom claro do papel. */
.section--ink .lede { color: color-mix(in srgb, var(--paper) 82%, transparent); }
.contact-list .label { opacity: 0.85; }
.btn { min-height: 44px; max-width: 100%; white-space: normal; }
.btn-row { align-items: center; }
html.js .reveal { opacity: 1; transform: none; transition: none; }
html.js [data-rise] { animation-duration: 0.35s; animation-delay: 0s; }
.book-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem; }
.book-grid .cover { width: 100%; max-width: 20rem; margin-inline: auto; }
.book-card .book-meta { max-width: 29rem; margin-inline: auto; width: 100%; }
.book-card .book-status { display: block; margin-bottom: 0.7rem; }
.book-card .book-meta h3 { margin-bottom: 0.65rem; }
.book-card .book-meta p { margin-bottom: 0.6rem; }
.book-page .book-hero .kicker { font-size: 0.75rem; }
.book-page .book-hero h1 { font-size: clamp(2.2rem, 4.5vw, 3.7rem); text-wrap: balance; overflow-wrap: break-word; }
.book-page .book-hero { padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.book-page .book-hero .cover { max-width: 20rem; }
.book-page .section-head { margin-bottom: 2rem; }
.book-page .hero-aside { margin-bottom: 0; }
.mentoria-grid--services { row-gap: 0; }
@supports (grid-template-rows: subgrid) {
  .mentoria-card--service { display: grid; grid-template-rows: subgrid; grid-row: span 6; }
  .mentoria-card--service .mentoria-outcomes { align-self: start; }
  .mentoria-card--service .kicker { align-self: start; }
  .mentoria-card--service h3, .mentoria-card--service h4 { align-self: start; }
  .mentoria-card--service p { align-self: start; }
  .mentoria-card--service .mentoria-card-actions { align-self: end; }
}
.mentoria-card--service h4 { margin-block: 0.9rem 0.6rem; }

/* Como começamos: número, título e texto alinhados por linha entre os passos. */
.mentoria-passos { list-style: none; padding-left: 0; counter-reset: passo; row-gap: 0; column-gap: clamp(1.5rem, 3vw, 3rem); }
.mentoria-passos li { counter-increment: passo; padding: 1.25rem 0 clamp(2rem, 3.5vw, 2.5rem); border-top: 1px solid var(--line-strong); display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; }
.mentoria-passos li::before { content: counter(passo, decimal-leading-zero); font-family: var(--font-mono); font-size: 0.75rem; letter-spacing: 0.14em; color: var(--accent); margin-bottom: 1rem; }
.mentoria-passos strong { font-size: clamp(1.3rem, 2vw, 1.5rem); margin: 0 0 0.75rem; }
.mentoria-passos p { margin: 0; max-width: 36rem; }
.mentoria-message { font-size: 0.78rem; min-height: 48px; }
.mentoria-practical { border-block: 1px solid var(--line); background: var(--paper-2); padding-block: 1.4rem; }
.mentoria-practical dl { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 2rem; margin: 0; }
.mentoria-practical dt { font-family: var(--font-mono); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ink-soft); margin-bottom: 0.35rem; }
.mentoria-practical dd { margin: 0; line-height: 1.45; }
.mentoria-contact .letter-consent { font-size: 0.95rem; }
.podcast-comment-note { color: var(--ink-soft); font-size: 1rem; max-width: 25rem; }
.podcast-episode { padding-block: 2rem; }
.podcast-cover figcaption { font-size: 0.75rem; }
.podcast-player summary { font-size: 0.8rem; min-height: 44px; }
.linkedin-post-meta { line-height: 1.6; letter-spacing: 0.03em; }
.linkedin-intro .lede { margin-bottom: 1.5rem; }
.article-header { padding-top: clamp(2.5rem, 5vw, 4rem); }
.home-page .section { padding-block: clamp(2.5rem, 4.5vw, 4rem); }
.home-page .section-head { max-width: 48rem; margin-bottom: 1.8rem; }
.home-page .section-head .lede { font-size: 1.15rem; }
.home-hero { padding-block: clamp(2.5rem, 5vw, 4rem); }
.home-hero .kicker { color: var(--paper); }
.home-hero h1 { max-width: 19em; font-size: clamp(2.25rem, 4.5vw, 3.8rem); line-height: 1.12; margin-bottom: 1.2rem; text-wrap: balance; }
.home-hero .lede { color: color-mix(in srgb, var(--paper) 85%, transparent); max-width: 44rem; font-size: 1.2rem; margin-bottom: 1.8rem; }
.home-feature { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: center; }
.home-feature h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.home-feature p { max-width: 45rem; }
.home-feature .btn-row { gap: 1rem 1.5rem; }
.home-feature .kicker { margin-bottom: 0.8rem; }
/* Mentorias na home: título, texto e link alinhados por linha entre os cards. */
.mentoria-grid.home-mentorias { row-gap: 0; }
.home-mentorias .mentoria-card { padding-block: 1.25rem clamp(2rem, 3.5vw, 2.5rem); display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; }
.home-mentorias .mentoria-card h3 { margin: 0 0 0.75rem; }
.home-mentorias .mentoria-card p { margin: 0 0 1.25rem; max-width: 36rem; }
.home-mentorias .text-link { align-self: end; }
.home-author { display: grid; grid-template-columns: 208px minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: center; }
.home-author h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); max-width: 25ch; }
.home-author .portrait { max-width: 208px; }
.home-author .kicker { margin-bottom: 0.8rem; }
.home-manifesto { margin: 1rem 0 0; border-left: 2px solid var(--accent); padding-left: 1rem; color: var(--ink-soft); font-style: italic; font-size: 1rem; max-width: 42rem; }
.home-works { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 2.5rem; }
.home-work { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 1.25rem; align-items: center; border-top: 1px solid var(--line-strong); padding-top: 1.25rem; }
.home-work h3 { font-size: clamp(1.3rem, 2vw, 1.7rem); margin-block: 0.45rem; }
.home-work h3 a { text-decoration: none; }
.home-work .cover { width: 100%; }
.home-work--future { grid-column: 1 / -1; }
.home-work--future p { margin-bottom: 0; color: var(--ink-soft); font-size: 1rem; }
.home-future-mark { font-family: var(--font-display); font-size: 2.5rem; text-align: center; color: var(--ink-faint); }
.home-section-link { margin-top: 1.2rem; }
.home-voices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.5rem; }
.home-voices > div + div { border-left: 1px solid var(--line-strong); padding-left: 3.5rem; }
.home-voices h2 { font-size: clamp(1.7rem, 2.8vw, 2.3rem); }
.home-podcast-title { display: flex; align-items: center; gap: 1.2rem; margin-bottom: 1rem; }
.home-podcast-title img { width: 76px; height: 76px; border: 1px solid var(--line-strong); }
.home-podcast-title h2 { margin-bottom: 0; }
.home-episode { border-top: 1px solid var(--line-strong); padding-top: 1rem; }
.home-episode h3 { font-size: 1.35rem; margin-block: 0.5rem; }
.home-posts { list-style: none; padding: 0; margin: 1rem 0 0; }
.home-posts li { border-top: 1px solid var(--line-strong); }
.home-posts a { display: block; padding-block: 0.8rem; font-family: var(--font-display); font-size: 1.2rem; line-height: 1.35; text-decoration: none; }
.home-posts a:hover, .home-work h3 a:hover { color: var(--accent); }
.home-page #contato .kicker { margin-bottom: 0.9rem; }
.home-page #contato p { max-width: 30rem; }
@media (max-width: 1020px) {
  .nav-toggle { display: flex; }
  .site-nav { position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 0; background: var(--paper); border-bottom: 1px solid var(--line); padding: 0.5rem 1.5rem 1.25rem; display: none; max-height: calc(100dvh - 4.25rem); overflow-y: auto; }
  .site-nav a { font-size: 0.8rem; padding-block: 0.9rem; border-bottom: 1px solid var(--line); min-height: 48px; }
  .site-nav a::after { content: none; }
  .site-nav a[aria-current="page"] { color: var(--accent); }
  body.nav-open .site-nav { display: flex; }
  body.nav-open .nav-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  body.nav-open .nav-toggle span:nth-child(2) { opacity: 0; }
  body.nav-open .nav-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
}
@media (max-width: 820px) {
  .home-voices { grid-template-columns: 1fr; gap: 2rem; }
  .home-voices > div + div { border-left: 0; border-top: 1px solid var(--line-strong); padding: 2rem 0 0; }
  .mentoria-grid--services { row-gap: 1.8rem; }
  .mentoria-card--service { display: flex; }
  .mentoria-practical dl { grid-template-columns: 1fr; gap: 1rem; }
}
@media (max-width: 600px) {
  .home-hero h1 { font-size: 2.2rem; }
  .home-hero h1 br { display: none; }
  .home-hero .lede { font-size: 1.12rem; }
  .home-hero .btn-row { align-items: stretch; }
  .home-hero .btn { font-size: 0.76rem; padding-inline: 1.2rem; }
  .home-feature { grid-template-columns: 132px minmax(0, 1fr); gap: 1.25rem; align-items: start; }
  .home-feature h2 { font-size: 1.65rem; }
  .home-feature .kicker { font-size: 0.75rem; }
  .home-feature .kicker::before { display: none; }
  .home-feature p { grid-column: 1 / -1; }
  .home-feature .btn-row { flex-direction: column; align-items: flex-start; }
  .home-feature .btn { padding-inline: 1rem; font-size: 0.75rem; }
  .home-author { grid-template-columns: 1fr; gap: 1.5rem; }
  .home-author .portrait { width: 144px; margin-inline: 0; }
  .home-author h2 { max-width: none; }
  .home-works { grid-template-columns: 1fr; }
  .home-work--future { grid-column: auto; }
  .book-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .book-grid .cover { max-width: 15rem; }
  .book-card .book-meta { max-width: 26rem; }
  .book-page .book-hero .cover { max-width: 220px; }
  .book-page .book-hero-grid { gap: 1.8rem; }
  .book-page .book-hero h1 { font-size: 2.15rem; }
  .book-page .section { padding-block: 2.5rem; }
  .book-page .section-head { margin-bottom: 1.5rem; }
  .podcast-intro { gap: 1.5rem; }
  .podcast-cover { max-width: 152px; }
  .podcast-intro h1 { font-size: 2.5rem; }
  .podcast-tagline { margin-bottom: 0.8rem; }
  .podcast-intro .lede { font-size: 1.15rem; }
  .podcast-cover figcaption { font-size: 0.75rem; }
  .podcast-episode h3 { font-size: 1.7rem; }
  .contact-list li { align-items: flex-start; flex-direction: column; gap: 0.35rem; }
  .contact-list a { overflow-wrap: anywhere; min-height: 32px; }
  .section--ink .contact-list .label { color: var(--paper); }
  .section-head { margin-bottom: 2rem; }
  .article-header { padding-top: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) { html.js [data-rise] { animation: none; } }
@media (max-width: 600px) {
  .home-feature > div { display: contents; }
  .home-feature > .cover-link { grid-column: 1; grid-row: 1 / span 2; }
  .home-feature .kicker { grid-column: 2; margin-bottom: 0; }
  .home-feature h2 { grid-column: 2; margin-bottom: 0; }
  .home-feature p, .home-feature .btn-row { grid-column: 1 / -1; margin-bottom: 0; }
  .home-feature .btn-row { flex-direction: row; align-items: center; gap: 1rem; }
}

/* Home combinada: abertura simbólica e vitrine original, a pedido do autor. */
/* Vitrine das quatro obras (home e página Livros).
   1 coluna no celular, 2×2 no intermediário e 4 lado a lado no desktop largo, sem obra sozinha. */
.book-grid.book-showcase { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(1.8rem, 3.5vw, 3rem); row-gap: 0; }
@media (min-width: 72rem) { .book-grid.book-showcase { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: clamp(1.5rem, 2.2vw, 2.25rem); } }
@media (max-width: 34rem) { .book-grid.book-showcase { grid-template-columns: 1fr; } }
.book-showcase .cover { max-width: 22rem; margin-inline: 0; }

/* Capa, rótulo, título, frase e link alinhados por linha entre os cards. */
.book-showcase .book-card { display: grid; grid-row: span 5; grid-template-rows: subgrid; row-gap: 0; padding-bottom: clamp(2.2rem, 4vw, 3.2rem); }
.book-showcase .book-meta { display: contents; }
.book-showcase .book-card .book-status { margin: 1.3rem 0 0.7rem; }
.book-showcase .book-card h3 { margin: 0 0 0.65rem; }
.book-showcase .book-card .book-meta p { margin: 0 0 1rem; }
.book-showcase .book-card .text-link,
.book-showcase .book-soon { align-self: end; }
.book-soon { display: inline-flex; align-items: center; min-height: 44px; width: fit-content; font-family: var(--font-mono); font-size: 0.78rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-faint); border-bottom: 1px dashed var(--line-strong); padding-bottom: 0.35em; }
.home-page .hero--symbol h1 { font-size: clamp(2.5rem, 6vw, 4.4rem); }
.home-page .hero-sign { color: color-mix(in srgb, var(--paper) 78%, transparent); }

/* Abertura no desktop: espaços proporcionais à altura da tela, para os botões
   aparecerem sem rolar em telas de 768px a 1080px de altura. */
@media (min-width: 601px) {
  .home-page .hero--symbol { padding-block: clamp(2.5rem, 7vh, 6rem) clamp(3rem, 8vh, 6rem); }
  .home-page .hero--symbol .mark-large { width: clamp(4.5rem, 10vh, 8rem); margin-bottom: clamp(1.2rem, 3vh, 2rem); }
  .home-page .hero--symbol h1 { font-size: clamp(2.5rem, min(6vw, 7.5vh), 4.4rem); }
  .home-page .hero--symbol .lede { margin-bottom: clamp(1.5rem, 3.5vh, 2.4rem); }
  .home-page .hero-sign { margin-top: clamp(1.6rem, 4vh, 2.8rem); }
}

/* Abertura no celular: os dois botões lado a lado e visíveis na primeira tela. */
@media (max-width: 600px) {
  .home-page .hero--symbol { padding-block: 2rem 2.6rem; }
  .home-page .hero--symbol .mark-large { width: 3.5rem; margin-bottom: 1rem; }
  .home-page .hero--symbol .lede { margin-bottom: 1.4rem; }
  .home-page .hero--symbol .btn-row { flex-wrap: nowrap; gap: 0.6rem; }
  .home-page .hero--symbol .btn { padding-inline: 1.1em; letter-spacing: 0.1em; white-space: nowrap; }
  .home-page .hero-role { font-size: 0.7rem; letter-spacing: 0.08em; margin: 0.2rem auto 1rem; }
  .home-page .hero-sign { margin-top: 1.4rem; font-size: 0.66rem; letter-spacing: 0.12em; }
}

/* Abertura: quem escreve, antes da tese. */
.hero-role { font-family: var(--font-mono); font-size: clamp(0.8rem, 1.1vw, 0.92rem); letter-spacing: 0.16em; text-transform: uppercase; color: color-mix(in srgb, var(--paper) 88%, transparent); margin: 0.4rem auto 1.4rem; }

/* Faixa de credibilidade da home: fatos da trajetória logo após a abertura. */
.home-proof { border-block: 1px solid var(--line); background: var(--paper-2); padding-block: clamp(1.8rem, 3.5vw, 2.6rem); }
.home-proof dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: clamp(1.5rem, 3vw, 2.5rem); row-gap: 0; margin: 0; }
/* Valor e descrição alinhados por linha, mesmo quando um valor quebra em duas linhas. */
.home-proof dl > div { display: grid; grid-row: span 2; grid-template-rows: subgrid; row-gap: 0; border-left: 1px solid var(--line-strong); padding-left: 1.1rem; }
.home-proof dt { font-family: var(--font-display); font-size: clamp(1.25rem, 1.9vw, 1.55rem); line-height: 1.2; color: var(--ink); margin-bottom: 0.45rem; }
.home-proof dd { margin: 0; font-size: 0.95rem; line-height: 1.45; color: var(--ink-soft); }
@media (max-width: 34rem) {
  .home-proof dl { grid-template-columns: 1fr; }
  .home-proof dl > div { padding-bottom: 1.1rem; }
  .home-proof dl > div:last-child { padding-bottom: 0; }
}

/* Fileira de marcas: empresas da trajetória logo abaixo dos fatos. */
.proof-brands { display: flex; flex-wrap: wrap; align-items: center; gap: 1.2rem 2.5rem; border-top: 1px solid var(--line); margin-top: clamp(1.4rem, 3vw, 2rem); padding-top: clamp(1.2rem, 2.5vw, 1.6rem); }
.proof-brands-label { font-family: var(--font-mono); font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-soft); }
.proof-brands-logos { display: flex; flex: 1; flex-wrap: wrap; align-items: center; justify-content: space-around; gap: 1.5rem 2.5rem; }
/* Nome do primeiro e do último logo alinhado pela borda, para não passar da tela. */
.proof-brands-logos .company:first-child::after { left: 0; transform: translate(0, 4px); }
.proof-brands-logos .company:last-child::after { left: auto; right: 0; transform: translate(0, 4px); }
.proof-brands-logos .company:first-child:is(:hover, :focus)::after,
.proof-brands-logos .company:last-child:is(:hover, :focus)::after { transform: translate(0, 0); }
@media (max-width: 900px) {
  .proof-brands { flex-direction: column; align-items: flex-start; }
  .proof-brands-logos { width: 100%; }
}
@media (max-width: 600px) {
  .proof-brands-logos { justify-content: space-between; gap: 0.75rem; }
  .proof-brands-logos .company-logo { height: calc(var(--h) * 0.6); }
}

/* Biblioteca editorial: três obras em conjunto e o quarto movimento separado. */
.library-page .article-header { padding-bottom: 0.8rem; }
.library-page .article-header .lede { max-width: 42rem; }
.library-page .section--tight { padding-top: 1.7rem; }
.library-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; }
.library-card { min-width: 0; display: flex; flex-direction: column; gap: 1.5rem; }
.library-card .cover { width: 100%; max-width: 280px; margin-inline: 0; }
.library-card-meta { flex: 1; display: flex; flex-direction: column; }
.library-card .book-status { min-height: 2.4rem; display: block; }
.library-card h2 { font-size: clamp(1.5rem, 2.4vw, 1.9rem); min-height: 3.5em; margin-bottom: 0.8rem; }
.library-card h2 a { text-decoration: none; }
.library-card h2 a:hover { color: var(--accent); }
.library-card p { font-size: 1.06rem; color: var(--ink-soft); }
.library-card .text-link { margin-top: auto; }
.library-future { margin-top: 3rem; padding-block: 2rem 0; border-top: 1px solid var(--line-strong); display: grid; grid-template-columns: 64px minmax(140px, 1fr) minmax(0, 2fr); gap: 1.5rem; align-items: start; }
.library-future-number { font-family: var(--font-display); font-size: 2.5rem; color: var(--ink-faint); }
.library-future h2 { font-size: 1.9rem; margin-top: 0.5rem; }
.library-future p { color: var(--ink-soft); margin-bottom: 0; }
@media (max-width: 900px) {
  .library-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .library-card { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line-strong); }
  .library-card h2 { min-height: 0; font-size: 1.6rem; }
  .library-card .book-status { min-height: 0; margin-bottom: 0.75rem; }
  .library-future { grid-template-columns: 40px minmax(0, 1fr); }
  .library-future p { grid-column: 2; }
}
@media (max-width: 480px) {
  .library-card { grid-template-columns: 100px minmax(0, 1fr); gap: 1.2rem; }
  .library-card-meta { display: contents; }
  .library-card > .cover-link { grid-column: 1; grid-row: 1 / span 2; }
  .library-card .book-status, .library-card h2 { grid-column: 2; }
  .library-card .book-status { align-self: start; margin-bottom: 0; }
  .library-card h2 { align-self: start; font-size: 1.45rem; }
  .library-card p, .library-card .text-link { grid-column: 1 / -1; margin-bottom: 0; }
  .library-future { gap: 0.8rem; }
}

/* Biblioteca restaurada ao desenho anterior à revisão de UX. */
/* A grade da página Livros vem de .book-showcase, compartilhada com a home. */

/* Avaliações de leitores: destaques na home e lista completa na página do livro. */
.stars { color: var(--accent); letter-spacing: 0.12em; }
.reader-score { font-family: var(--font-mono); font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-soft); margin: 0; }
.reader-score .stars { font-size: 0.95rem; margin-right: 0.35rem; }
.book-page #leitores .reader-score { margin-top: 1rem; }
.review-card { margin: 0; border-top: 1px solid var(--line-strong); padding: 1.25rem 0 1.6rem; }
.review-card blockquote { margin: 0 0 1.1rem; }
.review-card figcaption { display: flex; flex-direction: column; gap: 0.2rem; font-size: 0.92rem; }
.review-card figcaption strong { font-weight: 500; color: var(--ink); }
.review-card figcaption time { font-family: var(--font-mono); font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-faint); }
.review-card figcaption .stars { font-size: 0.85rem; margin-bottom: 0.15rem; }

/* Home: três destaques curtos, frase e autor alinhados por linha. */
.reader-reviews { margin-top: clamp(2.5rem, 5vw, 3.5rem); }
.reader-reviews-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0.5rem 1.5rem; margin-bottom: 1.4rem; }
.reader-reviews-head h3 { margin: 0; font-size: clamp(1.4rem, 2.2vw, 1.75rem); }
.review-grid--highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: clamp(1.5rem, 3vw, 2.5rem); row-gap: 0; margin-bottom: 0.6rem; }
.review-grid--highlights .review-card { display: grid; grid-row: span 2; grid-template-rows: subgrid; row-gap: 0; }
.review-grid--highlights blockquote { font-family: var(--font-display); font-size: clamp(1.1rem, 1.6vw, 1.3rem); line-height: 1.4; color: var(--ink); }
.review-grid--highlights figcaption { align-self: end; }
@media (max-width: 760px) { .review-grid--highlights { grid-template-columns: 1fr; } }

/* Página do livro: um trecho em destaque e os demais na grade de destaques. */
.review-card--lead { padding: 1.6rem 0 2.2rem; margin-bottom: 0.4rem; }
.review-card--lead blockquote { font-family: var(--font-display); font-size: clamp(1.5rem, 2.8vw, 2.1rem); line-height: 1.3; color: var(--ink); max-width: 40rem; margin-bottom: 1.3rem; }
.book-page #leitores .reader-source { border-top: 1px solid var(--line); padding-top: 1.4rem; margin-top: 0.6rem; }
.reader-score a { color: inherit; text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 0.25em; }
.reader-score a:hover { color: var(--accent); text-decoration-color: var(--accent); }
.reader-reviews-links { display: flex; flex-wrap: wrap; gap: 0.2rem 2rem; }
.reader-source { margin: 1.5rem 0 0; font-size: 0.95rem; color: var(--ink-soft); display: flex; flex-wrap: wrap; align-items: center; gap: 0.2rem 1.5rem; }

/* Reconhecimento da obra (ex.: Bienal do Livro), junto ao livro na home e na página do livro. */
.book-recognition { display: inline-flex; align-items: center; gap: 0.6rem; margin: 0.4rem 0 0; padding: 0.45rem 0.8rem; border: 1px solid var(--accent); color: var(--accent); font-family: var(--font-mono); font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; line-height: 1.4; }
.book-recognition::before { content: "◆"; font-size: 0.6rem; }
.book-hero .book-recognition { margin: 0 0 1.4rem; }

/* Logos das empresas nas cores originais: levam ao site de cada uma e mostram o nome ao passar o mouse. */
.company { position: relative; display: inline-flex; align-items: center; padding-block: 0.15rem; outline-offset: 4px; text-decoration: none; border: 0; }
.company-logo { display: block; height: var(--h); width: auto; transition: transform 0.25s var(--ease); }
.company:hover .company-logo, .company:focus-visible .company-logo { transform: translateY(-1px); }
.company::after { content: attr(data-name) " ↗"; position: absolute; left: 50%; bottom: calc(100% + 0.5rem); transform: translate(-50%, 4px); white-space: nowrap; background: var(--ink); color: var(--paper); font-family: var(--font-mono); font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.35rem 0.55rem; opacity: 0; pointer-events: none; transition: opacity 0.2s, transform 0.2s; z-index: 2; }
.company:hover::after, .company:focus-visible::after, .company:focus::after { opacity: 1; transform: translate(-50%, 0); }

/* Vitrine compacta da home: capa, rótulo, título e link (o resumo de cada obra fica na página Livros). */
.book-showcase--compact .book-card { grid-row: span 4; padding-bottom: clamp(1.4rem, 3vw, 2rem); }
.book-showcase--compact .cover { max-width: 11.5rem; }
.book-showcase--compact .book-card h3 { font-size: clamp(1.1rem, 1.6vw, 1.3rem); }
/* Obras futuras: presentes na história, com menos peso que o livro disponível. */
.book-card--future .cover { opacity: 0.72; transition: opacity 0.25s var(--ease); }
.book-card--future:hover .cover, .book-card--future:focus-within .cover { opacity: 1; }
.book-card--future .book-status { color: var(--ink-faint); }
@media (max-width: 34rem) {
  .book-grid.book-showcase--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1rem; }
  .book-showcase--compact .cover { max-width: none; }
  .book-showcase--compact .book-card .book-status { font-size: 0.62rem; letter-spacing: 0.1em; margin-top: 0.8rem; }
  .book-showcase--compact .book-card h3 { font-size: 1.02rem; }
  .book-showcase--compact .text-link, .book-showcase--compact .book-soon { font-size: 0.66rem; letter-spacing: 0.08em; }
}

/* Avaliações no celular: lado a lado, deslizando com o dedo; o próximo cartão aparece na borda. */
@media (max-width: 760px) {
  .review-grid--highlights { display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .review-grid--highlights::-webkit-scrollbar { display: none; }
  .review-grid--highlights .review-card { flex: 0 0 82%; scroll-snap-align: start; display: flex; flex-direction: column; justify-content: space-between; }
  .review-grid--highlights figcaption { align-self: stretch; }
}

/* Rodapé no celular: marca em cima, Navegação e Livros lado a lado, Ecossistema embaixo. */
@media (max-width: 560px) {
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.8rem 1.5rem; padding-bottom: 2rem; }
  .footer-grid > .footer-brand, .footer-grid > .footer-col:last-child { grid-column: 1 / -1; }
  .footer-col li { margin-bottom: 0.45rem; }
}

/* Celular: Podcast/Ideias e Mentorias lado a lado, deslizando com o dedo, como as avaliações. */
@media (max-width: 600px) {
  .home-voices { position: relative; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .home-voices::-webkit-scrollbar, .mentoria-grid.home-mentorias::-webkit-scrollbar { display: none; }
  .home-voices > div, .home-voices > div + div { flex: 0 0 86%; scroll-snap-align: start; border-left: 0; border-top: 1px solid var(--line-strong); padding: 1.25rem 0 0; }
  .home-voices h2 { font-size: 1.5rem; }

  .home-page #mentorias .section-head .lede { font-size: 1rem; }
  .mentoria-grid.home-mentorias { position: relative; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .home-mentorias .mentoria-card { flex: 0 0 82%; scroll-snap-align: start; display: flex; flex-direction: column; padding-bottom: 1.25rem; }
  .home-mentorias .text-link { align-self: flex-start; margin-top: auto; }
}

/* Mentorias: o que a pessoa leva de cada caminho. */
.mentoria-outcomes { list-style: none; margin: 0 0 0.4rem; padding: 0; }
.mentoria-outcomes li { position: relative; padding-left: 1.3rem; margin-bottom: 0.45rem; color: var(--ink); line-height: 1.45; }
.mentoria-outcomes li::before { content: "◆"; position: absolute; left: 0; top: 0.1em; font-size: 0.6rem; color: var(--accent); }
/* Faixa prática com a primeira conversa sem custo em destaque. */
.mentoria-practical dl { grid-template-columns: 1.4fr 1fr 1fr 1.3fr; }
.mentoria-practical-highlight dt { color: var(--accent); }
.mentoria-practical-highlight dd { font-weight: 500; }
@media (max-width: 900px) { .mentoria-practical dl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 2rem; } }
@media (max-width: 34rem) { .mentoria-practical dl { grid-template-columns: 1fr; } }
.review-role { font-family: var(--font-mono); font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-faint); }

/* Fotos da página Mentorias, no mesmo tratamento P&B do retrato da home (cor ao passar o mouse). */
.portrait--photo { margin: clamp(1.6rem, 3vw, 2.2rem) 0 0; }
.portrait--wide { aspect-ratio: 4 / 3; max-width: 30rem; }
@media (max-width: 820px) {
  .portrait--wide { max-width: none; }
}

/* Contato: texto de abertura com foto de palestra ao lado. */
.contact-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 20rem); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.portrait--talk { aspect-ratio: 4 / 5; max-width: 20rem; margin: 0; }
@media (max-width: 820px) {
  .contact-intro { grid-template-columns: 1fr; gap: 1.8rem; }
  .portrait--talk { max-width: 15rem; }
}

/* Mentorias, "Da experiência à expressão": título em cima; foto e texto lado a lado, centralizados. */
.mentoria-contexto--photo { align-items: center; }
.mentoria-contexto--photo .portrait--wide { max-width: none; margin: 0; }
.mentoria-contexto--photo p:last-of-type { margin-bottom: 1.2rem; }
@media (max-width: 820px) { .mentoria-contexto--photo .portrait--wide { max-width: 34rem; } }

/* Mentorias, "Conte seu momento": no desktop o texto acompanha a rolagem ao lado do formulário. */
@media (min-width: 821px) {
  .mentoria-contact > div:first-child { position: sticky; top: 6rem; align-self: start; }
}

/* Página do livro no celular: temas e trechos lado a lado, deslizando com o dedo (como as avaliações). */
@media (max-width: 600px) {
  .book-page .findings, .book-page .excerpt-stack { position: relative; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .book-page .findings::-webkit-scrollbar, .book-page .excerpt-stack::-webkit-scrollbar { display: none; }
  .book-page .findings > li { flex: 0 0 80%; scroll-snap-align: start; }
  .book-page .excerpt-stack > .excerpt-card { flex: 0 0 84%; scroll-snap-align: start; }
}

/* Sobre: Bienal, palestras, mentorias e podcast, com a foto de palestra ao lado. */
.about-public { display: grid; grid-template-columns: minmax(0, 22rem) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.portrait--about-talk { aspect-ratio: 4 / 5; max-width: 22rem; margin: 0; }
.about-public p { max-width: 38rem; color: var(--ink-soft); }
.about-public-links { display: flex; flex-wrap: wrap; gap: 0.2rem 2rem; margin-top: 0.6rem; }
.hero .book-recognition { margin-top: 1.4rem; }
/* Sobre: dentro da coluna de texto, título em cima e os três logos numa linha, alinhados à esquerda. */
.container--prose .proof-brands { margin-top: clamp(2rem, 4vw, 2.8rem); flex-direction: column; align-items: flex-start; gap: 1rem; }
.container--prose .proof-brands-logos { width: 100%; justify-content: flex-start; gap: 1.2rem 2.6rem; }
.container--prose .company-logo { height: calc(var(--h) * 0.8); }
@media (max-width: 820px) {
  .about-public { grid-template-columns: 1fr; }
  .portrait--about-talk { max-width: 15rem; }
}

/* Lista de espera dos próximos livros (seção escura "Acompanhe a investigação"). */
.waitlist-form { max-width: 34rem; margin: 1.8rem auto 0; text-align: left; }
.waitlist-row { display: flex; gap: 0.6rem; }
.waitlist-row input { flex: 1; min-width: 0; min-height: 48px; padding: 0 1rem; font: inherit; font-size: 1rem; color: var(--paper); background: transparent; border: 1px solid color-mix(in srgb, var(--paper) 45%, transparent); border-radius: 0; }
.waitlist-row input::placeholder { color: color-mix(in srgb, var(--paper) 55%, transparent); }
.waitlist-row input:focus-visible { outline: 2px solid var(--accent-soft); outline-offset: 2px; }
.waitlist-row .btn { white-space: nowrap; }
.waitlist-consent { display: flex; gap: 0.6rem; align-items: flex-start; margin-top: 0.9rem; font-size: 0.85rem; line-height: 1.45; color: color-mix(in srgb, var(--paper) 78%, transparent); }
.waitlist-consent input { margin-top: 0.2rem; accent-color: var(--accent-soft); }
.waitlist-status { margin: 0.8rem 0 0; font-size: 0.9rem; color: var(--accent-soft); }
.waitlist-status:empty { display: none; }
.waitlist-ok { max-width: 34rem; margin: 1.8rem auto 0; padding: 1.1rem 1.3rem; border: 1px solid color-mix(in srgb, var(--paper) 35%, transparent); display: flex; flex-direction: column; gap: 0.3rem; color: color-mix(in srgb, var(--paper) 85%, transparent); }
.waitlist-ok strong { color: var(--paper); font-weight: 500; }
.waitlist-ok:focus { outline: none; }
.waitlist-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 0.2rem 2rem; margin-top: 1.6rem; }
@media (max-width: 520px) {
  .waitlist-row { flex-direction: column; }
}
.waitlist-ok[hidden], .waitlist-form[hidden] { display: none; }
@media (max-width: 600px) {
  .container--prose .proof-brands-logos { justify-content: space-between; gap: 0.75rem; }
  .container--prose .company-logo { height: calc(var(--h) * 0.6); }
}

/* Mentorias: retrato vertical (Bienal) ao lado do texto de apresentação. */
.portrait--listening { aspect-ratio: 4 / 5; max-width: 24rem; margin: 0; }
@media (max-width: 820px) { .portrait--listening { max-width: 16rem; } }
/* Sobre, "Processo de escrita": foto horizontal na largura da coluna de texto. */
.container--prose .portrait--wide { max-width: none; margin-top: clamp(1.8rem, 3.5vw, 2.4rem); }

/* Mentorias, "O que você quer construir agora?": no celular os três caminhos deslizam lado a lado. */
@media (max-width: 600px) {
  .mentoria-grid--services { position: relative; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .mentoria-grid--services::-webkit-scrollbar { display: none; }
  .mentoria-grid--services > .mentoria-card--service { flex: 0 0 84%; scroll-snap-align: start; display: flex; flex-direction: column; }
  .mentoria-grid--services .mentoria-card-actions { margin-top: auto; }
}

/* Sobre no celular: retrato do topo menor e "Áreas de interesse" deslizando lado a lado. */
@media (max-width: 600px) {
  .hero-grid .portrait { max-width: 15rem; margin-inline: 0; }
  .areas { position: relative; display: flex; gap: 0.75rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; border: 0; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .areas::-webkit-scrollbar { display: none; }
  .areas li { flex: 0 0 78%; scroll-snap-align: start; border: 1px solid var(--line); }
}

/* Página do livro no desktop: menos altura sem mudar o conteúdo. */
@media (min-width: 1100px) {
  /* "Algumas páginas": os três trechos lado a lado, mesma altura, citação na base. */
  .book-page .excerpt-stack { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.4rem; }
  .book-page .excerpt-stack .excerpt-card:nth-child(2) { transform: none; }
  .book-page .excerpt-card { display: flex; flex-direction: column; padding: 2rem 1.8rem 1.6rem; }
  .book-page .excerpt-card p { font-size: 1.18rem; }
  .book-page .excerpt-card figcaption { margin-top: auto; }
}

/* Home, "O que eu faço": livros, mentoria e palestras em linguagem direta, logo após "Quem escreve". */
.home-offer { margin-top: clamp(2.2rem, 5vw, 3.4rem); padding-top: clamp(1.6rem, 3vw, 2.2rem); border-top: 1px solid var(--line); }
.home-offer-title { margin: 0 0 1.2rem; }
.offer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: clamp(1.5rem, 3vw, 2.5rem); row-gap: 0; }
.offer-card { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; border-left: 1px solid var(--line-strong); padding: 0.2rem 0 0 1.1rem; }
.offer-card h3 { margin: 0 0 0.4rem; font-size: clamp(1.25rem, 1.9vw, 1.5rem); }
.offer-card p { margin: 0 0 0.6rem; color: var(--ink-soft); line-height: 1.5; }
.offer-card .text-link { align-self: end; }
@media (max-width: 760px) {
  .offer-grid { grid-template-columns: 1fr; row-gap: 1.4rem; }
  .offer-card { display: block; }
}

/* Conceito central em linguagem simples (painel do livro na home e topo da página do livro). */
.concept { margin: 0.4rem 0 1rem; padding: 0.8rem 1rem; border-left: 2px solid var(--accent); background: color-mix(in srgb, var(--paper) 70%, transparent); font-size: 0.98rem; line-height: 1.55; color: var(--ink-soft); max-width: 36rem; }
.concept strong { display: block; margin-bottom: 0.15rem; font-weight: 500; color: var(--ink); }
.book-hero .concept { margin-bottom: 1.2rem; }

/* Mentorias: perguntas frequentes logo após "Como começamos". */
.mentoria-faq { max-width: 46rem; margin-top: clamp(2rem, 4vw, 3rem); }
.mentoria-faq h3 { font-size: clamp(1.3rem, 2vw, 1.6rem); margin: 0 0 1rem; }
.mentoria-faq .faq p { margin: 0 0 1rem; color: var(--ink-soft); }

/* Contato, "Palestras": quatro temas alinhados por linha e chamada para convite. */
.talk-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: clamp(1.2rem, 2.5vw, 2rem); row-gap: 0; }
.talk-card { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; border-top: 1px solid var(--line-strong); padding: 1.1rem 0 1.4rem; }
.talk-card .kicker { margin-bottom: 0.7rem; color: var(--accent); }
.talk-card h3 { margin: 0 0 0.5rem; font-size: clamp(1.15rem, 1.6vw, 1.35rem); }
.talk-card p { margin: 0; color: var(--ink-soft); font-size: 0.95rem; line-height: 1.5; }
.talk-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; margin-top: clamp(1.4rem, 3vw, 2rem); padding-top: 1.4rem; border-top: 1px solid var(--line); }
.talk-formats { margin: 0; font-family: var(--font-mono); font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-soft); }
@media (max-width: 1000px) { .talk-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .talk-grid { position: relative; display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; margin-inline: -1.5rem; padding-inline: 1.5rem; scroll-padding-inline: 1.5rem; scrollbar-width: none; }
  .talk-grid::-webkit-scrollbar { display: none; }
  .talk-card { flex: 0 0 80%; scroll-snap-align: start; display: block; }
}

/* Recomendações do LinkedIn: Mentorias (4 destaques), Sobre (6 + lista) e home. */
.home-proof dt a { color: inherit; text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 0.18em; }
.home-proof dt a:hover { text-decoration-color: var(--accent); }
@media (max-width: 1024px) and (min-width: 761px) { .home-proof dl { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-proof dl > div:nth-child(-n+2) { padding-bottom: 1.4rem; } }
.review-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1024px) { .review-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
#recomendacoes { scroll-margin-top: 4rem; }
.prose .recs-stack { list-style: none; margin: 0; padding: 0; }
.prose .recs-stack li { margin: 0; padding: 1.2rem 0; border-top: 1px solid var(--line); }
.recs-stack q { display: block; font-family: var(--font-display); font-size: 1.15rem; line-height: 1.45; color: var(--ink); }
.recs-name { display: block; margin-top: 0.45rem; font-family: var(--font-mono); font-size: 0.7rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-faint); }
.recs-more { border-top: 1px solid var(--line-strong); }
.recs-more summary { cursor: pointer; padding: 1.1rem 0; font-family: var(--font-mono); font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-soft); }
.recs-more .recs-stack li:first-child { border-top: 0; padding-top: 0.2rem; }
.recs-source { margin-top: 1.5rem; }

/* Contato: cada tema de palestra leva ao episódio do podcast correspondente. */
.talk-episode { align-self: end; margin-top: 0.9rem; font-family: var(--font-mono); font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent); text-decoration: none; }
.talk-episode:hover { text-decoration: underline; }
@media (max-width: 760px) { .talk-card { display: flex; flex-direction: column; } .talk-episode { align-self: flex-start; margin-top: auto; padding-top: 0.9rem; } }

/* Sobre: link para a trajetória completa, logo abaixo das empresas. */
.about-education { margin: 1.6rem 0 0; font-size: 0.95rem; line-height: 1.55; color: var(--ink-soft); }
.about-education strong { display: block; margin-bottom: 0.35rem; font-family: var(--font-mono); font-size: 0.72rem; font-weight: 400; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-faint); }
.about-linkedin { margin: 1.2rem 0 0; }

/* Sobre: reconhecimentos na seção Liderança, no mesmo tom da formação. */
.about-recognitions { margin-top: 2.2em; }
.prose .about-recognitions h3 { margin: 0 0 0.6rem; font-family: var(--font-mono); font-size: 0.72rem; font-weight: 400; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-faint); }
.prose .about-recognitions ul { list-style: none; margin: 0; padding: 0; }
.prose .about-recognitions li { margin: 0; padding: 0.95rem 0; border-top: 1px solid var(--line); }
.about-recognitions li strong { display: block; font-weight: 500; color: var(--ink); }
.about-recognitions li span { display: block; margin-top: 0.2rem; font-size: 0.95rem; line-height: 1.5; color: var(--ink-soft); }

/* Home: a recomendação em destaque logo abaixo da apresentação do autor. */
.home-rec { margin: 1.8rem 0 0.8rem; font-size: clamp(1.1rem, 1.7vw, 1.3rem); }
#palestras { scroll-margin-top: 4rem; }

/* Home: só os três livros publicados ou em escrita; Eclipse fica na página Livros. */
@media (min-width: 44rem) { .book-grid.book-showcase--three { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Palestras: página própria (antes uma seção de Contato). */
.home-proof .talk-proof { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1024px) and (min-width: 761px) { .home-proof .talk-proof > div { padding-bottom: 0; } }
@media (max-width: 34rem) { .home-proof .talk-proof { grid-template-columns: 1fr; } }
.talk-formats--below { margin-top: clamp(1.4rem, 3vw, 2rem); padding-top: 1.4rem; border-top: 1px solid var(--line); }
.contact-talks { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.8rem 2rem; }
.contact-talks p { margin: 0; color: var(--ink-soft); }
.contact-talks strong { color: var(--ink); font-weight: 500; }

/* Home: link para a página Livros no cabeçalho da seção, abaixo do texto. */
#livros .section-head .text-link { margin-top: 0.6rem; }

/* Preço do livro físico, junto dos botões de compra. */
.book-price { margin: 0.9rem 0 0; font-family: var(--font-mono); font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-soft); }
.book-price strong { font-weight: 500; color: var(--ink); }

/* Aviso de cookies (Google Analytics só carrega depois do "Aceitar"). */
.cookie-banner { position: fixed; z-index: 60; left: 1rem; right: 1rem; bottom: 1rem; margin-inline: auto; max-width: 40rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.9rem 1.4rem; padding: 1.1rem 1.3rem; background: var(--paper); border: 1px solid var(--line-strong); box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14); }
.cookie-banner p { flex: 1 1 18rem; margin: 0; font-size: 0.92rem; line-height: 1.5; color: var(--ink-soft); }
.cookie-actions { display: flex; gap: 0.6rem; }
.cookie-actions .btn { min-height: 2.6rem; padding-inline: 1.1rem; }
.footer-legal a { color: inherit; }
.footer-cookies { padding: 0; border: 0; background: none; font: inherit; letter-spacing: inherit; text-transform: inherit; color: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 0.2em; }
.footer-cookies:hover { color: var(--paper); }

/* Política de privacidade */
.privacy-updated { margin-top: 1rem; font-family: var(--font-mono); font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-faint); }
.privacy h2 { margin-top: 2.2em; }
.privacy h2:first-child { margin-top: 0; }
.privacy h3 { margin: 1.6em 0 0.4em; font-size: 1.15rem; }
.privacy-link { padding: 0; border: 0; background: none; font: inherit; color: var(--accent); text-decoration: underline; text-underline-offset: 0.2em; cursor: pointer; }
.cookie-banner a { color: var(--ink); text-underline-offset: 0.2em; }

/* Rodapé: assinatura "powered by Agilizza", discreta como o restante do rodapé; a marca mantém o "zz" verde. */
.powered-by { display: inline-flex; align-items: baseline; gap: 0.45em; color: inherit; text-decoration: none; text-transform: none; letter-spacing: 0.04em; font-size: 0.78rem; transition: color 0.2s; }
.powered-by .agilizza-mark { font-family: system-ui, -apple-system, "Segoe UI", sans-serif; font-weight: 700; font-size: 1.05rem; letter-spacing: -0.01em; color: color-mix(in srgb, var(--paper) 88%, transparent); }
.agilizza-mark span { color: #a6d93c; }
.powered-by:hover, .powered-by:focus-visible { color: var(--paper); }
.powered-by:hover .agilizza-mark { color: var(--paper); }
