/* ==========================================================================
   ponte.css — os blocos das páginas antigas desenhados no sistema novo.
   Só usa os tokens de tema.css (cor, tipo, espaço, movimento).
   Regras: cantos retos, nenhuma sombra parada, nenhuma linha fina de enfeite,
   cinco tamanhos de fonte, vinho só no traço, no grifo e no botão.
   ========================================================================== */

/* ---------- home: avaliações e frase para o Google ---------- */
.avaliacoes { font-size: var(--t-nota); margin-top: -12px; }
.avaliacoes .estrela { width: 1em; height: 1em; fill: var(--vinho); vertical-align: -.12em; }
.caminhos-intro { grid-column: 1 / 8; margin: -32px 0 48px; max-width: 46ch; }
@media (max-width: 860px) { .caminhos-intro { grid-column: 1 / -1; } }

/* ==========================================================================
   BASE DO CONTEÚDO ANTIGO
   ========================================================================== */
.container {
  padding-left: max(var(--margem), env(safe-area-inset-left, 0px));
  padding-right: max(var(--margem), env(safe-area-inset-right, 0px));
}
.antigo main > section, body > section, body > header.post-head, body > .post-layout,
.page-hero, .section, .abx-section, .eb-sec, .tema-intro { padding-block: var(--secao) 0; }
.antigo main > section:first-child { padding-top: 0; }

/* campos de cor: os mesmos degraus da home */
.surface-navy, .section-dark, .escuro {
  background: var(--noite); color: var(--sobre-noite);
  margin-top: var(--secao); padding-block: clamp(72px, 8vw, 128px) !important;
}
.surface-navy a:not(.btn-primary):not(.botao), .section-dark a:not(.btn):not(.botao) { color: var(--sobre-noite); }
.surface-navy :focus-visible, .section-dark :focus-visible { outline-color: var(--argila); }
.surface-navy.final, .abx-final, .post-cta, .landing-cta {
  background: var(--argila); color: var(--tinta);
}
.surface-navy.final a:not(.btn-primary) { color: var(--tinta); }
.section-gray, .eb-sec.alt { background: var(--tom); margin-top: var(--secao); padding-block: clamp(72px, 8vw, 128px) !important; }

/* títulos e textos dentro das seções: a mesma escala da home */
.antigo main h2, .section h2, .eb-sec h2, .abx-section h2, .heading-lg, .heading-xl, .ident-h2, .related h3 {
  font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; text-wrap: balance; max-width: 22ch;
}
.antigo main h3, .heading-md, .heading-sm, .eb-sec h3, .abx-section h3 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); letter-spacing: -.01em; }
.antigo main h2 + p, .antigo main h2 + .sect-lead, .sect-lead, .sect-sub, .text-lg, .ext-texto .lead, .eb-lead, .sub {
  margin-top: 20px; max-width: 60ch; font-size: var(--t-texto);
}
.ext-texto, .abordagem-content, .about-text { max-width: 68ch; }
.ext-texto > * + *, .abordagem-content > * + *, .about-text > * + *, .text-md + .text-md { margin-top: 1em; }
.text-md, .about-text p { color: var(--tinta); }
.label, .sobre-label, .dep-label, .abx-kicker, .eb-kicker, .hero-kicker, .post-cat-label, .rc-cat, .post-cat, .f-cat, .answer-label {
  display: inline-block; font-size: var(--t-nota); color: var(--suave); text-decoration: none;
}
.surface-navy .label, .surface-navy .dep-label, .section-dark .label { color: rgba(238, 240, 236, .78); }
.text-gold, .text-italic { font-style: italic; color: inherit; }
.divider { height: 0; margin: 28px 0; }
.text-center { text-align: left; }

/* ==========================================================================
   BOTÕES E LINKS ANTIGOS
   ========================================================================== */
.btn-primary, .btn.btn-primary, .btn-whatsapp, .btn.primary, .abx-btn-primary, .eb-btn.buy, .aside-cta a, .ch-wa, .landing-cta .btn {
  display: inline-flex; align-items: center; gap: .6em; min-height: 56px; padding: 0 1.6em;
  background: var(--vinho); color: var(--sobre-vinho) !important; border: 0; text-decoration: none;
  font: 500 var(--t-texto)/1 var(--f-texto); letter-spacing: -.005em; cursor: pointer;
  transition: transform 160ms var(--ease-out), background-color 200ms ease;
}
.btn-primary:active, .btn-whatsapp:active, .abx-btn-primary:active, .eb-btn.buy:active, .ch-wa:active { transform: scale(.97); }
@media (hover: hover) and (pointer: fine) {
  .btn-primary:hover, .btn-whatsapp:hover, .btn.primary:hover, .abx-btn-primary:hover, .eb-btn.buy:hover, .aside-cta a:hover, .ch-wa:hover { background: var(--tinta); }
}
.btn-primary span, .btn-whatsapp span { transition: transform 200ms var(--ease-out); }
@media (hover: hover) and (pointer: fine) { .btn-primary:hover span { transform: translateX(4px); } }

/* links secundários: o grifo */
.hero-quiet, .link-gold, .btn-outline, .abx-btn-ghost, .eb-btn.ghost, .btn.ghost, .cv-esc, .read, .f-more, .hb-all,
.dep-all, .ch-map, .ss-links a, .sb-links a, .ti-start a, .al-link, .aside-gloss a, .g-rel a, .inline-link a, .paginas-dedicadas a {
  position: relative; display: inline-block; padding-bottom: .18em; color: inherit; text-decoration: none; font-weight: 500;
}
.hero-quiet::after, .link-gold::after, .btn-outline::after, .abx-btn-ghost::after, .eb-btn.ghost::after, .btn.ghost::after, .cv-esc::after,
.dep-all::after, .ch-map::after, .ss-links a::after, .sb-links a::after, .ti-start a::after, .al-link::after, .aside-gloss a::after,
.g-rel a::after, .inline-link a::after, .paginas-dedicadas a::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: .14em; min-height: 3px;
  background: var(--vinho); clip-path: var(--traco-fino); transform-origin: left; transition: transform 260ms var(--ease-out);
}
.surface-navy .link-gold::after, .surface-navy .dep-all::after, .section-dark .btn-outline::after { background: var(--argila); }
@media (hover: hover) and (pointer: fine) { .hero-quiet:hover::after, .link-gold:hover::after, .ss-links a:hover::after { transform: scaleX(1.06); } }
.read { color: var(--vinho); }
.read::after { display: none; }
.antigo main p a:not([class]), .post-body p a:not([class]), .faq-a a, .answer-box a, .eb-sec p a:not([class]), .abx-section p a:not([class]) {
  color: var(--vinho); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em;
}
.surface-navy p a:not([class]) { color: var(--argila); }

/* ==========================================================================
   TOPO DAS PÁGINAS DE ATENDIMENTO (hero)
   ========================================================================== */
.hero .hero-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--vao); align-items: center; min-height: min(80svh, 820px); }
.hero .hero-grid > :first-child { grid-column: 1 / 7; display: flex; flex-direction: column; gap: 22px; padding-block: 32px 48px; min-width: 0; }
.hero-visual { grid-column: 7 / 13; align-self: stretch; display: flex; flex-direction: column; gap: 10px;
  margin-right: calc(-1 * max(var(--margem), env(safe-area-inset-right, 0px))); }
.antigo .hero h1 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; text-wrap: balance; max-width: 16ch; }
.hero-kicker a, .ext-crumb a { color: inherit; }
.hero-bio { font-size: var(--t-chamada); line-height: 1.4; letter-spacing: -.01em; max-width: 34ch; }
.hero-flags, .abx-flags { font-size: var(--t-nota); color: var(--suave); max-width: 60ch; }
.hero-badges { display: flex; flex-wrap: wrap; gap: 6px 22px; font-size: var(--t-nota); color: var(--suave); }
.hero-badge { display: inline-flex; align-items: center; gap: 8px; }
.hero-badge .dot, .hero-avail .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--vinho); display: inline-block; }
.hero-avail { display: inline-flex; align-items: center; gap: 8px; font-size: var(--t-nota); color: var(--suave); }
.hero-avail .dot { background: #2F7D57; }
.hero-ctas, .abx-cta-row, .eb-ctas, .ch-btns, .cv-links { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 26px; }
.hero-photo { flex: 1; min-height: 520px; overflow: hidden; background: var(--tom); }
.hero-photo picture, .hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.55) contrast(.98); }
.hero-stat { display: flex; align-items: baseline; gap: 10px; font-size: var(--t-nota); color: var(--suave);
  padding-right: max(var(--margem), env(safe-area-inset-right, 0px)); }
.hero-stat .num { font: italic 400 var(--t-chamada)/1 var(--f-titulo); color: var(--tinta); }
.hero-stat strong { font-weight: 500; color: var(--tinta); }
@media (max-width: 860px) {
  .hero .hero-grid { min-height: 0; }
  .hero .hero-grid > :first-child, .hero-visual { grid-column: 1 / -1; }
  .hero-visual { margin-left: calc(-1 * max(var(--margem), env(safe-area-inset-left, 0px))); }
  .hero-photo { min-height: 0; aspect-ratio: 4 / 3.6; flex: none; }
  .hero-stat { padding-inline: max(var(--margem), env(safe-area-inset-left, 0px)); }
}

/* ==========================================================================
   PASSOS (trilha), GARANTIAS, CHAMADAS
   ========================================================================== */
.trilha, .abx-steps { list-style: none; padding: 0; margin: 48px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--vao); }
.tr-step, .abx-step { display: flex; flex-direction: column; gap: 10px; padding-right: 6%; }
.tr-node, .abx-step .n { font: italic 400 var(--t-chamada)/1 var(--f-titulo); color: var(--vinho); }
.surface-navy .tr-node { color: var(--argila); }
.surface-navy .tr-step p { color: rgba(238, 240, 236, .86); }
.abx-step .n { color: var(--vinho); }
.garantias-linha { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 6px 28px; font-size: var(--t-nota); color: rgba(238, 240, 236, .78); }
.steps-nota, .tz-nota, .dep-nota, .dep-fonte, .al-sub, .eb-note, .eb-aviso { margin-top: 20px; font-size: var(--t-nota); color: var(--suave); max-width: 70ch; }
.surface-navy .steps-nota, .surface-navy .dep-nota, .surface-navy .dep-fonte { color: rgba(238, 240, 236, .74); }
.pr-cta-home, .final .btn-primary, .abx-final .btn, .post-cta .btn { margin-top: 36px; }
.final { text-align: left; }
.final h2 { max-width: 18ch; }
.final p { margin-top: 18px; max-width: 52ch; }
.final .container { display: flex; flex-direction: column; align-items: flex-start; }
.sem-compromisso { margin-top: 16px; font-size: var(--t-nota); color: var(--suave); }
@media (max-width: 760px) { .trilha, .abx-steps { grid-template-columns: 1fr; gap: 32px; } }

/* ==========================================================================
   FUSO, TEMAS, PAGAMENTO, PRECISA, PILARES, IDENTIFICAÇÃO
   ========================================================================== */
.abx-tz-wrap { margin-top: 32px; overflow-x: auto; max-width: 760px; }
.abx-tz { border-collapse: collapse; width: 100%; font-variant-numeric: tabular-nums; }
.abx-tz th, .abx-tz td { text-align: left; padding: 12px 16px; }
.abx-tz thead th { background: var(--tom); font-weight: 500; font-size: var(--t-nota); }
.abx-tz tbody tr:nth-child(even) td { background: color-mix(in srgb, var(--tom) 55%, transparent); }

.temas, .abx-themes, .precisa-grid, .pag-grid, .pilares, .eb-cards, .pal-grid, .hub-cards, .contact-cards {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px var(--vao); margin-top: 48px; list-style: none; padding: 0;
}
.pag-grid, .pilares, .eb-cards, .pal-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tema { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; }
.tema h3 { transition: color 200ms ease; }
@media (hover: hover) and (pointer: fine) { .tema:hover h3 { color: var(--vinho); } }
.pag-item, .pilar, .precisa-item, .eb-card, .abx-theme { display: flex; flex-direction: column; gap: 8px; }
.pag-item h3, .pilar h3, .eb-card h3 { font-size: var(--t-chamada); }
.precisa-titulo { font: 400 var(--t-chamada)/1.2 var(--f-titulo); margin-top: 32px; }
.ident-rows { margin-top: 36px; display: flex; flex-direction: column; gap: 14px; max-width: 64ch; }
.ident-rows > * { display: flex; gap: 14px; align-items: baseline; }
.tick { color: var(--vinho); flex: none; }
.ident-fecho, .fn-quote, .abordagem-quote, .eb-frase, .eb-fecho-grande {
  margin-top: 40px; font: italic 400 var(--t-chamada)/1.35 var(--f-titulo); max-width: 40ch;
}
@media (max-width: 760px) {
  .temas, .abx-themes, .precisa-grid, .pag-grid, .pilares, .eb-cards, .pal-grid, .hub-cards, .contact-cards { grid-template-columns: 1fr; gap: 32px; }
}

/* ==========================================================================
   QUEM VAI TE ESCUTAR (sobre-grid, cv) E NÚMEROS
   ========================================================================== */
.sobre-grid, .about-grid { display: grid; grid-template-columns: 5fr 7fr; gap: var(--secao) var(--vao); align-items: start; }
.sobre-photo, .about-photo { position: relative; overflow: hidden; background: var(--tom); aspect-ratio: 4 / 5; }
.sobre-photo picture, .sobre-photo img, .about-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.55) contrast(.98); }
.about-photo-badge { position: absolute; left: 0; bottom: 0; background: var(--fundo); padding: 8px 12px; font-size: var(--t-nota); }
.sobre-txt { display: flex; flex-direction: column; gap: 16px; }
.sobre-txt h2 { margin: 0; }
.cv-sub { color: var(--suave); }
.cv { margin-top: 12px; display: flex; flex-direction: column; gap: 12px; }
.cv-tit { font: 400 var(--t-chamada)/1.2 var(--f-titulo); margin-top: 12px; }
.cv-lista, .cv-pontos { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.cv-lista li { display: grid; grid-template-columns: 4.5em 1fr; gap: 12px; }
.cv-ano, .credential-year { font-variant-numeric: tabular-nums; color: var(--vinho); }
.cv-pontos li { padding-left: 22px; position: relative; }
.cv-pontos li::before { content: ""; position: absolute; left: 0; top: .72em; width: 12px; height: 4px; background: var(--vinho); clip-path: var(--traco-fino); }
.sobre-stats { display: flex; flex-wrap: wrap; gap: 20px 40px; margin-top: 12px; }
.sobre-stat { display: flex; flex-direction: column; }
.sobre-stat .n { font: italic 400 var(--t-titulo)/1 var(--f-titulo); }
.sobre-stat .lbl { font-size: var(--t-nota); color: var(--suave); }
.credentials { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--vao); margin-top: 48px; }
.credential { background: var(--tom); padding: 24px; display: flex; flex-direction: column; gap: 6px; }
.pub-list { margin-top: 32px; display: flex; flex-direction: column; gap: 4px; }
.pub-item { background: color-mix(in srgb, var(--sobre-noite) 6%, transparent); padding: 18px 22px; display: flex; flex-direction: column; gap: 4px; }
.pub-type { font-size: var(--t-nota); color: var(--argila); }
.quem { display: flex; flex-direction: column; gap: 12px; max-width: 68ch; }
.q-cred { font-size: var(--t-nota); color: var(--suave); }
@media (max-width: 860px) {
  .sobre-grid, .about-grid { grid-template-columns: 1fr; }
  .sobre-photo, .about-photo { max-width: 420px; }
  .credentials { grid-template-columns: 1fr; }
}

/* ==========================================================================
   DEPOIMENTOS (carrossel: o script rola o trilho na horizontal)
   ========================================================================== */
.dep-carrossel { margin-top: 40px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; }
.dc-trilho { display: flex; gap: var(--vao); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.dc-trilho::-webkit-scrollbar { display: none; }
.dep { flex: 0 0 calc((100% - 2 * var(--vao)) / 3); scroll-snap-align: start; display: flex; flex-direction: column; gap: 14px;
  background: color-mix(in srgb, var(--sobre-noite) 6%, transparent); padding: 28px; }
.dep p { font: italic 400 var(--t-texto)/1.55 var(--f-titulo); }
.stars { color: var(--argila); letter-spacing: .1em; font-size: var(--t-nota); }
.author { font-size: var(--t-nota); color: rgba(238, 240, 236, .78); margin-top: auto; }
.dc-nav { width: 44px; height: 44px; border: 0; background: none; color: inherit; font: 400 1.75rem/1 var(--f-texto); cursor: pointer; }
.dc-nav:disabled { opacity: .3; cursor: default; }
.dc-dots { grid-column: 1 / -1; display: flex; justify-content: center; gap: 4px; }
.dc-dots button { width: 24px; height: 24px; border: 0; background: none; cursor: pointer; position: relative; }
.dc-dots button::after { content: ""; position: absolute; left: 6px; right: 6px; top: 10px; height: 4px; background: rgba(238, 240, 236, .3); clip-path: var(--traco-fino); }
.dc-dots button[aria-current="true"]::after { background: var(--argila); }
.dep-anchor { margin-top: 16px; max-width: 60ch; color: rgba(238, 240, 236, .86); }
@media (max-width: 960px) { .dep { flex-basis: 86%; } }

/* ==========================================================================
   PERGUNTAS (details) — as mesmas fichas da home
   ========================================================================== */
.faq-wrap, .post-faq, .eb-faq .container, .abx-faq, .faq-list { max-width: 860px; }
.faq-wrap, .faq-list { margin-top: 40px; }
details.faq-item, .post-faq details, .abx-faq details, .eb-faq details, .faq-list .faq-item { background: var(--salvia); }
details.faq-item:nth-of-type(even), .post-faq details:nth-of-type(even), .abx-faq details:nth-of-type(even), .eb-faq details:nth-of-type(even), .faq-list .faq-item:nth-child(even) { background: var(--argila); }
details.faq-item + details.faq-item, .post-faq details + details, .abx-faq details + details, .eb-faq details + details, .faq-list .faq-item + .faq-item { margin-top: 6px; }
details summary, .faq-question {
  position: relative; display: block; list-style: none; cursor: pointer; padding: 22px 60px 22px 26px;
  font: 500 var(--t-texto)/1.35 var(--f-texto); color: var(--tinta); background: none; border: 0; width: 100%; text-align: left;
}
details summary::-webkit-details-marker { display: none; }
details summary::after { content: "+"; position: absolute; right: 26px; top: 50%; margin-top: -.5em; font: 400 1.5rem/1 var(--f-texto); color: var(--vinho); transition: transform 200ms var(--ease-out); }
details[open] > summary::after { transform: rotate(45deg); }
.faq-a, .faq-answer-inner, details > .a, details > div:not(.faq-a) { padding: 0 26px 26px; max-width: 64ch; color: var(--tinta); }
.faq-question .icon { display: none; }
.toc-mobile, .sumario-fone { background: var(--tom) !important; }

/* ==========================================================================
   CONSULTÓRIO: álbum, como chegar, mapa
   ========================================================================== */
.al-grid { margin-top: 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--vao); }
.al-grid figure, .al-grid > * { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.al-grid img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; filter: saturate(.55) contrast(.98); background: var(--tom); }
.al-grid figcaption { font-size: var(--t-nota); color: var(--suave); }
.chegar { margin-top: 40px; display: flex; flex-direction: column; gap: 18px; max-width: 70ch; }
.map-wrapper { aspect-ratio: 16 / 9; background: var(--tom); }
.map-wrapper iframe, .chegar iframe { width: 100%; height: 100%; border: 0; display: block; filter: saturate(.6); }
@media (max-width: 760px) { .al-grid { grid-template-columns: 1fr 1fr; } }

/* ==========================================================================
   FAIXA DE SERVIÇOS (fim dos posts e temas)
   ========================================================================== */
.service-strip { padding-block: var(--secao) 0; padding-left: max(var(--margem), env(safe-area-inset-left, 0px)); padding-right: max(var(--margem), env(safe-area-inset-right, 0px)); }
.ss-inner { display: flex; flex-direction: column; gap: 12px; }
.ss-links { display: flex; flex-wrap: wrap; gap: 12px 28px; }

/* ==========================================================================
   POSTS
   ========================================================================== */
.read-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 40; pointer-events: none; }
.read-progress i { display: block; height: 100%; width: 0; background: var(--vinho); }
.post-head { padding-left: max(var(--margem), env(safe-area-inset-left, 0px)); padding-right: max(var(--margem), env(safe-area-inset-right, 0px)); padding-top: 32px !important; }
.post-head .container { padding: 0; display: flex; flex-direction: column; gap: 18px; }
.post-crumbs { display: flex; flex-wrap: wrap; gap: 6px; font-size: var(--t-nota); color: var(--suave); }
.post-crumbs a { color: inherit; }
.post-title { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; max-width: 22ch; text-wrap: balance; }
.post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: var(--t-nota); color: var(--suave); }
.post-meta .dot { width: 3px; height: 3px; border-radius: 50%; background: var(--suave); }
.updated { font-size: var(--t-nota); color: var(--suave); }

.post-layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--vao); align-items: start;
  padding-left: max(var(--margem), env(safe-area-inset-left, 0px)); padding-right: max(var(--margem), env(safe-area-inset-right, 0px)); padding-top: 72px !important; }
.post-body { grid-column: 4 / 10; grid-row: 1; min-width: 0; font-size: var(--t-texto); line-height: 1.65; }
.post-body > * + * { margin-top: 1.05em; }
.post-body .lead { font-size: var(--t-chamada); line-height: 1.42; letter-spacing: -.012em; }
.post-body h2 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); letter-spacing: -.015em; margin-top: 2.4em; scroll-margin-top: 100px; max-width: none; }
.post-body h3 { font: 500 var(--t-texto)/1.4 var(--f-texto); margin-top: 1.8em; }
.post-body strong { font-weight: 600; }
.post-body ul, .post-body ol { padding-left: 1.2em; }
.post-body li + li { margin-top: .4em; }
.post-body blockquote { margin: 2em 0; padding: 28px 0; font: 400 var(--t-chamada)/1.3 var(--f-titulo); letter-spacing: -.01em; }
.post-body blockquote p { margin: 0; }
.post-fig { margin: 2em 0; }
.post-fig img { width: 100%; height: auto; filter: saturate(.55); }
.post-fig figcaption { margin-top: 8px; font-size: var(--t-nota); color: var(--suave); }
.inline-link { font-size: var(--t-nota); color: var(--suave); }
.il-mark { display: none; }
.mid-cta, .answer-box, .ebook-box { background: var(--salvia); padding: 24px 28px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.answer-box { background: var(--tom); }
.mid-cta a { color: var(--vinho); font-weight: 500; }
.eb-inner { display: flex; flex-direction: column; gap: 10px; }
.eb-label { font-size: var(--t-nota); color: var(--suave); }
.post-faq { margin-top: 2.4em !important; }
.post-faq h2 { margin-bottom: 20px; }
.post-share { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; font-size: var(--t-nota); padding-top: 12px; }
.ps-label { color: var(--suave); }
.share-wa, .share-copy { background: none; border: 0; padding: 0; color: var(--tinta); font: 500 var(--t-nota)/1.4 var(--f-texto); cursor: pointer;
  text-decoration: underline; text-decoration-color: var(--vinho); text-decoration-thickness: 2px; text-underline-offset: .35em; min-height: 44px; }
.post-signature p { font: italic 400 var(--t-chamada)/1.25 var(--f-titulo); }
.post-signature strong { font-weight: 400; }
.sig-name { display: block; margin-top: 6px; font: 400 var(--t-nota)/1.5 var(--f-texto); font-style: normal; color: var(--suave); }

/* lateral: sumário e leituras, à esquerda, como no protótipo */
.post-aside { grid-column: 1 / 4; grid-row: 1; position: sticky; top: 100px; }
.aside-inner { display: flex; flex-direction: column; gap: 36px; }
.aside-box { display: flex; flex-direction: column; gap: 10px; }
.aside-title { font: 500 var(--t-texto)/1.3 var(--f-texto); }
.toc ol { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 2px; }
.toc a { position: relative; display: inline-block; padding-block: 5px; font-size: var(--t-nota); line-height: 1.4; color: var(--suave); text-decoration: none; transition: color 180ms ease; }
.toc a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 1px; height: 4px; background: var(--vinho); clip-path: var(--traco-fino); transform: scaleX(0); transform-origin: left; transition: transform 260ms var(--ease-out); }
.toc a.on { color: var(--tinta); }
.toc a.on::after { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) { .toc a:hover { color: var(--tinta); } }
.rel-item { display: flex; gap: 12px; align-items: flex-start; text-decoration: none; color: inherit; }
.rel-thumb { flex: none; width: 56px; aspect-ratio: 1; background: var(--tom) center / cover no-repeat; filter: saturate(.55); }
.rel-item b { display: block; font: 400 var(--t-nota)/1.4 var(--f-titulo); }
.rel-item small { font-size: var(--t-nota); color: var(--suave); }
.aside-gloss { font-size: var(--t-nota); color: var(--suave); }
.aside-cta { background: var(--salvia); padding: 20px; display: flex; flex-direction: column; gap: 14px; font-size: var(--t-nota); }
.aside-cta a { min-height: 44px; align-self: flex-start; font-size: var(--t-nota); }
.toc-mobile { display: none; }
@media (max-width: 1100px) { .post-body { grid-column: 4 / 12; } }
@media (max-width: 860px) {
  .post-layout { padding-top: 40px !important; }
  .post-body { grid-column: 1 / -1; }
  .post-aside { display: none; }
  .toc-mobile { display: block; padding: 4px 20px; margin-bottom: 1.6em; }
  .toc-mobile summary { padding: 14px 0; }
  .toc-mobile summary::after { right: 0; }
  .toc-mobile ol { list-style: none; padding: 0 0 14px; margin: 0; }
  .toc-mobile a { display: block; padding-block: 8px; color: var(--suave); text-decoration: none; font-size: var(--t-nota); }
}

/* depois do texto: leia também, convite, newsletter, autor */
.related, .post-cta, .news-box, .author-card, .start-banner, .hub-strip {
  margin-left: max(var(--margem), env(safe-area-inset-left, 0px)); margin-right: max(var(--margem), env(safe-area-inset-right, 0px));
}
.related { padding-top: var(--secao); }
.related-sub { margin-top: 12px; color: var(--suave); }
.related-grid { margin-top: 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--vao); }
.related-card { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; padding-top: 4px; }
.related-card h4 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); transition: color 200ms ease; }
@media (hover: hover) and (pointer: fine) { .related-card:hover h4 { color: var(--vinho); } }
.post-cta { margin-top: var(--secao); padding: clamp(40px, 6vw, 72px) clamp(24px, 5vw, 64px); display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.post-cta h3 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; }
.news-box { margin-top: 8px; background: var(--tom); padding: clamp(32px, 5vw, 56px) clamp(24px, 5vw, 64px); }
.nb-inner { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; max-width: 60ch; }
.nb-inner h4 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); }
.news-form { display: flex; flex-wrap: wrap; gap: 8px; }
.news-form input { min-height: 52px; padding: 0 16px; border: 0; background: var(--fundo); font: 400 var(--t-texto)/1 var(--f-texto); color: var(--tinta); min-width: min(320px, 100%); }
.news-form button { min-height: 52px; padding: 0 1.4em; border: 0; background: var(--vinho); color: #fff; font: 500 var(--t-texto)/1 var(--f-texto); cursor: pointer; }
.news-form .btn { min-height: 52px; }
.news-note, .news-ok { font-size: var(--t-nota); color: var(--suave); }
.author-card { margin-top: 8px; display: flex; gap: 18px; align-items: center; padding: 24px 0; }
.author-card img { width: 72px; height: 72px; object-fit: cover; filter: saturate(.55); }
.author-card .author-name { font: 400 var(--t-chamada)/1.2 var(--f-titulo); }
.author-card p { font-size: var(--t-nota); color: var(--suave); }
.post-tail-space { height: 0; }
@media (max-width: 760px) { .related-grid { grid-template-columns: 1fr; gap: 28px; } }

/* ==========================================================================
   BLOG: índice, temas, comece por aqui, glossário
   ========================================================================== */
.page-hero .container { display: flex; flex-direction: column; gap: 18px; padding-top: 24px; }
.page-hero .heading-xl, .abx-hero h1, .eb-hero h1 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; max-width: 20ch; text-wrap: balance; }
.page-hero .text-lg { font-size: var(--t-chamada); line-height: 1.4; max-width: 44ch; }
.start-banner { margin-top: 48px; background: var(--salvia); padding: 28px 32px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px 32px; align-items: center; }
.sb-main { font: 400 var(--t-chamada)/1.25 var(--f-titulo); color: inherit; text-decoration: none; }
.sb-links { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.featured { margin-top: 48px; display: grid; grid-template-columns: 7fr 5fr; gap: var(--vao); text-decoration: none; color: inherit; align-items: center; }
.f-img, .pc-img, .hp-img { display: block; aspect-ratio: 4 / 3; background: var(--tom) center / cover no-repeat; filter: saturate(.55); }
.f-text { display: flex; flex-direction: column; gap: 12px; }
.f-text h2, .f-text h3 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; }
.f-more { color: var(--vinho); align-self: flex-start; }
.f-more::after { display: none; }
.blog-tools { margin-top: 56px; display: flex; flex-direction: column; gap: 18px; }
.blog-search { position: relative; max-width: 420px; }
.blog-search input { width: 100%; min-height: 52px; padding: 0 18px 0 46px; border: 0; background: var(--tom); font: 400 var(--t-texto)/1 var(--f-texto); color: var(--tinta); }
.blog-search input:focus-visible { outline: 2px solid var(--vinho); outline-offset: 2px; }
.blog-search svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); }
.chips { display: flex; flex-wrap: wrap; gap: 4px 6px; }
.chip { position: relative; min-height: 44px; padding: 0 14px; border: 0; background: none; color: var(--suave); cursor: pointer; font: 400 var(--t-texto)/1 var(--f-texto); }
.chip .n { font-size: var(--t-nota); margin-left: 4px; }
.chip::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 8px; height: 4px; background: var(--vinho); clip-path: var(--traco-fino); transform: scaleX(0); transform-origin: left; transition: transform 260ms var(--ease-out); }
.chip.on { color: var(--tinta); }
.chip.on::after { transform: scaleX(1); }
.blog-grid, .home-posts { margin-top: 48px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px var(--vao); }
.post-card, .home-post { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: inherit; }
.post-card h3, .home-post h3 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); transition: color 200ms ease; }
@media (hover: hover) and (pointer: fine) { .post-card:hover h3, .home-post:hover h3, .featured:hover h2 { color: var(--vinho); } }
.post-card p { color: var(--tinta); }
.post-readtime, .hp-rt { font-size: var(--t-nota); color: var(--suave); }
.blog-empty { margin-top: 32px; color: var(--suave); }
.hub-strip { margin-top: var(--secao); }
.hub-cards { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; margin-top: 20px; }
.hub-cards.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.hub-card { background: var(--salvia); padding: 22px; display: flex; flex-direction: column; gap: 6px; text-decoration: none; color: inherit; min-height: 120px; justify-content: space-between; }
.hub-card:nth-child(even) { background: var(--argila); }
.hc-name { font: 400 var(--t-chamada)/1.2 var(--f-titulo); }
.hc-n { font-size: var(--t-nota); color: var(--suave); }
.tema-intro .ti-inner { padding-left: max(var(--margem), env(safe-area-inset-left, 0px)); padding-right: max(var(--margem), env(safe-area-inset-right, 0px)); max-width: 68ch; display: flex; flex-direction: column; gap: 14px; box-sizing: content-box; }
.ti-start { font-size: var(--t-nota); color: var(--suave); }
.caminho { margin-top: 48px; display: flex; flex-direction: column; gap: 14px; }
.cm-head { display: flex; gap: 14px; align-items: baseline; }
.cm-n { font: italic 400 var(--t-chamada)/1 var(--f-titulo); color: var(--vinho); }
.cm-sub { color: var(--suave); }
.glossario { margin-top: 40px; display: flex; flex-direction: column; gap: 36px; max-width: 72ch; }
.g-index { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: var(--t-nota); }
.g-term { display: flex; flex-direction: column; gap: 8px; scroll-margin-top: 100px; }
.g-term h2, .g-term h3 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); max-width: none; }
.g-rel { font-size: var(--t-nota); color: var(--suave); }
@media (max-width: 960px) {
  .blog-grid, .home-posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hub-cards, .hub-cards.four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .featured { grid-template-columns: 1fr; }
}
@media (max-width: 640px) { .blog-grid, .home-posts { grid-template-columns: 1fr; } }

/* ==========================================================================
   SOBRE, CONTATO, SERVIÇOS, E-BOOKS (vitrine)
   ========================================================================== */
.section .container > * + *, .page-hero .container > * + * { margin-top: 0; }
.section .container { display: flex; flex-direction: column; gap: 20px; }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--vao); align-items: start; }
.contact-card { background: var(--tom); padding: 24px; display: flex; gap: 14px; align-items: flex-start; }
.contact-icon { flex: none; color: var(--vinho); }
.contact-icon svg { width: 22px; height: 22px; }
.servico-section { display: grid; grid-template-columns: 1fr 1fr; gap: var(--vao); align-items: center; }
.servico-visual { position: relative; overflow: hidden; aspect-ratio: 4 / 3; background: var(--tom); }
.servico-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.55); }
.servico-visual-overlay { display: none; }
.servico-info { display: flex; flex-direction: column; gap: 16px; }
.servico-features { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.check { color: var(--vinho); margin-right: 8px; }
.reembolso-box { background: var(--salvia); padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.ebooks-grid { display: flex; flex-direction: column; gap: var(--secao); margin-top: 24px; }
.ebook-row { display: grid; grid-template-columns: 4fr 7fr; gap: var(--vao) clamp(32px, 5vw, 80px); align-items: center; }
.ebook-row.reverse .ebook-cover { order: 2; }
.ebook-cover { position: relative; }
.ebook-cover img { width: 100%; max-width: 360px; height: auto; display: block; }
.ebook-cover-bg { display: none; }
.ebook-info { display: flex; flex-direction: column; gap: 14px; }
.ebook-tag { font-size: var(--t-nota); color: var(--suave); background: none; padding: 0; }
.ebook-subtitle { font: italic 400 var(--t-texto)/1.4 var(--f-titulo); color: var(--suave); }
.ebook-highlights { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.ebook-highlights li { padding-left: 22px; position: relative; }
.ebook-highlights li::before { content: ""; position: absolute; left: 0; top: .72em; width: 12px; height: 4px; background: var(--vinho); clip-path: var(--traco-fino); }
.ebook-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: var(--t-nota); color: var(--suave); }
.ebook-meta .dot, .dot-blue, .dot-rose { display: none; }
.vit-price { font: italic 400 var(--t-titulo)/1 var(--f-titulo); }
.landing-cta { padding: 28px 32px; display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
@media (max-width: 860px) {
  .contact-grid, .servico-section, .ebook-row { grid-template-columns: 1fr; }
  .ebook-row.reverse .ebook-cover { order: 0; }
}

/* ==========================================================================
   FAMÍLIAS E PALESTRAS (abx)
   ========================================================================== */
.abx-hero { padding-block: 24px 0; }
.abx-hero .container { display: flex; flex-direction: column; gap: 20px; }
.abx-hero .sub { font-size: var(--t-chamada); line-height: 1.4; max-width: 44ch; }
.abx-section .container { display: flex; flex-direction: column; gap: 16px; }
.abx-final { margin-top: var(--secao); padding: clamp(40px, 6vw, 72px) max(var(--margem), env(safe-area-inset-left, 0px)); display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.abx-final h2 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; }
.abx-tail { margin-top: 20px; font-size: var(--t-nota); color: var(--suave); }

/* ==========================================================================
   PÁGINAS DOS E-BOOKS (eb)
   ========================================================================== */
.eb-hero { padding-block: 24px 0; }
.eb-grid { display: grid; grid-template-columns: 7fr 5fr; gap: var(--vao) clamp(32px, 5vw, 80px); align-items: center; }
.eb-grid > :first-child { display: flex; flex-direction: column; gap: 20px; }
.eb-sub { font-size: var(--t-chamada); line-height: 1.4; max-width: 40ch; }
.eb-trust, .eb-meta, .eb-cred { font-size: var(--t-nota); color: var(--suave); }
.eb-cover img { width: 100%; max-width: 420px; height: auto; display: block; margin-inline: auto; }
.eb-sec .container { display: flex; flex-direction: column; gap: 18px; }
.eb-check { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 10px; max-width: 64ch; }
.eb-check li { padding-left: 22px; position: relative; }
.eb-check li::before { content: ""; position: absolute; left: 0; top: .72em; width: 12px; height: 4px; background: var(--vinho); clip-path: var(--traco-fino); }
.eb-mods { padding-left: 1.4em; display: flex; flex-direction: column; gap: 10px; max-width: 64ch; }
.eb-mods li::marker { font-family: var(--f-titulo); color: var(--vinho); }
.eb-trecho { background: var(--salvia); padding: 28px; font: italic 400 var(--t-texto)/1.6 var(--f-titulo); max-width: 64ch; }
.eb-autor { display: grid; grid-template-columns: 120px 1fr; gap: var(--vao); align-items: start; }
.eb-autor img { width: 120px; height: 150px; object-fit: cover; filter: saturate(.55); }
.eb-offer { background: var(--argila); padding: clamp(28px, 4vw, 48px); display: flex; flex-direction: column; gap: 14px; align-items: flex-start; max-width: 720px; }
.eb-price { font: italic 400 var(--t-titulo)/1 var(--f-titulo); }
.eb-duo { display: grid; grid-template-columns: 1fr 1fr; gap: var(--vao); }
@media (max-width: 860px) { .eb-grid, .eb-duo { grid-template-columns: 1fr; } .eb-autor { grid-template-columns: 1fr; } }

/* ==========================================================================
   404
   ========================================================================== */
.wrap { min-height: 60vh; display: flex; flex-direction: column; justify-content: center; gap: 20px;
  padding: var(--secao) max(var(--margem), env(safe-area-inset-left, 0px)) 0; max-width: 760px; }
.wrap h1 { font: 400 var(--t-titulo)/1.02 var(--f-titulo); letter-spacing: -.02em; }
.wrap .links { display: flex; flex-wrap: wrap; gap: 14px 24px; align-items: center; }

/* ==========================================================================
   SEÇÕES COM FOTO (consultório, como funciona)
   ========================================================================== */
.sec-foto { padding-block: var(--secao) 0; }
.sec-foto .container { display: flex; flex-direction: column; gap: 18px; }
.home-blog .container, .doors .container { display: flex; flex-direction: column; gap: 18px; }

/* ---------- ajustes da primeira revisão visual ---------- */
.hero .hero-grid > :first-child { align-items: flex-start; }
.hero .hero-grid > :first-child > .btn-primary, .hero .hero-grid > :first-child > .hero-quiet { align-self: flex-start; }
.rel-thumb { display: none; }
.post-signature p { font: 400 var(--t-nota)/1.5 var(--f-texto); color: var(--suave); }
.post-signature strong { display: block; font: italic 400 var(--t-chamada)/1.25 var(--f-titulo); color: var(--tinta); }
.post-signature .sig-name { display: block; margin-top: 6px; font: 400 var(--t-texto)/1.4 var(--f-texto); color: var(--tinta); }

/* ---------- ajustes da segunda revisão visual ---------- */
/* cartões de post: título no tamanho de chamada; capas antigas fora das listas */
.post-card h2, .post-card h3, .home-post h3, .related-card h4 { font: 400 var(--t-chamada)/1.2 var(--f-titulo); letter-spacing: -.01em; max-width: none; }
.pc-img, .f-img, .hp-img { display: none; }
.featured { grid-template-columns: 1fr; max-width: 60ch; }
/* seção escura do Sobre: texto claro */
.section-dark p, .section-dark .text-md, .section-dark li { color: rgba(238, 240, 236, .86); }
.section-dark h2 { color: var(--sobre-noite); }
/* publicações (fundo claro) */
.section:not(.section-dark) .pub-item { background: var(--tom); }
.section:not(.section-dark) .pub-type { color: var(--suave); }
/* listas do e-book: termo em negrito acima da explicação */
.eb-mods li > div { display: flex; flex-direction: column; gap: 2px; }
.eb-mods b { font-weight: 600; }
/* ícones dos blocos "do seu lado, você precisa de pouco" */
.precisa-item svg, .pilar svg, .pag-item svg { width: 36px; height: 36px; color: var(--vinho); stroke: currentColor; }
/* botões nunca esticam numa coluna */
.btn, .btn-primary, .btn-whatsapp, .abx-btn, .eb-btn, .landing-cta a { align-self: flex-start; width: auto; }
.landing-cta { background: none; padding: 0; }
/* blocos que já estão dentro do .container não levam margem extra */
.container .start-banner, .container .hub-strip { margin-left: 0; margin-right: 0; }
/* título de post com subtítulo */
.post-title .dois-pontos { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.post-title .post-sub { display: block; margin-top: 12px; font: 400 var(--t-chamada)/1.25 var(--f-titulo); color: var(--suave); letter-spacing: -.01em; }

/* ==========================================================================
   AJUSTES DA INSPEÇÃO (títulos, colunas, rótulos, emojis)
   ========================================================================== */
/* títulos das páginas antigas: duas linhas no máximo */
@media (min-width: 861px) {
  .antigo .hero .hero-grid > :first-child { grid-column: 1 / 8; }
  .antigo .hero-visual { grid-column: 8 / 13; }
}
.antigo .hero h1, .antigo .page-hero .heading-xl, .antigo .abx-hero h1, .antigo .eb-hero h1, .antigo .post-title { max-width: none; }
.antigo main h2, .antigo .section h2, .antigo .heading-lg, .antigo .related h3 { max-width: 26ch; }
@media (max-width: 860px) {
  .antigo .hero h1, .antigo .page-hero .heading-xl, .antigo .abx-hero h1, .antigo .eb-hero h1, .antigo .post-title,
  .antigo main h2, .antigo .section h2, .antigo .heading-lg, .antigo .related h3, .antigo .post-cta h3, .antigo .abx-final h2 {
    font-size: clamp(1.625rem, 6.8vw, 2.125rem); line-height: 1.1;
  }
  .antigo .post-title .post-sub, .antigo .hero-bio, .antigo .page-hero .text-lg, .antigo .abx-hero .sub, .antigo .eb-sub { font-size: var(--t-texto); }
}

/* seções de um bloco só: título à esquerda, conteúdo à direita */
.antigo .ext-cidade .container, .antigo .ext-fuso .container, .antigo .ident-sec .container,
.antigo section:has(> .container > .faq-wrap) > .container, .antigo .final .container {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--vao); align-items: start;
}
.antigo .ext-cidade .container > *, .antigo .ext-fuso .container > *, .antigo .ident-sec .container > *,
.antigo section:has(> .container > .faq-wrap) > .container > *, .antigo .final .container > * { grid-column: 7 / 13; }
.antigo .ext-cidade .container > h2, .antigo .ext-fuso .container > h2, .antigo .ext-fuso .container > .sect-lead,
.antigo .ident-sec .container > h2, .antigo section:has(> .container > .faq-wrap) > .container > h2,
.antigo .final .container > h2 { grid-column: 1 / 6; }
.antigo .ext-fuso .container > h2, .antigo .ext-cidade .container > h2, .antigo .ident-sec .container > h2,
.antigo section:has(> .container > .faq-wrap) > .container > h2, .antigo .final .container > h2 { grid-row: 1 / span 6; align-self: start; }
.antigo .faq-wrap, .antigo .abx-tz-wrap { margin-top: 0; }
.antigo .ext-cidade .container > h2 + *, .antigo .ident-sec .container > h2 + * { margin-top: 0; }
.antigo .final .container > h2 { font-size: var(--t-titulo); }
.antigo .final .btn-primary { margin-top: 24px; }
@media (max-width: 860px) {
  .antigo .ext-cidade .container > *, .antigo .ext-fuso .container > *, .antigo .ident-sec .container > *,
  .antigo section:has(> .container > .faq-wrap) > .container > *, .antigo .final .container > * { grid-column: 1 / -1; grid-row: auto; }
  .antigo .faq-wrap, .antigo .abx-tz-wrap, .antigo .ext-cidade .container > h2 + * { margin-top: 24px; }
}

/* rótulos que só repetem o título: ficam para leitores de tela */
.antigo .dep-label, .antigo .sobre-label, .antigo .page-hero .label, .antigo .section .label, .antigo .post-cat-label, .antigo .eb-kicker {
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
/* categoria dos cartões vai para baixo do título */
.antigo .post-card .post-cat, .antigo .related-card .rc-cat { order: 3; }
.antigo .post-card .post-readtime { order: 4; }

/* estrelas desenhadas; contato sem ícones de emoji */
.dep { position: relative; }
.stars { order: 3; font-size: var(--t-nota); color: rgba(238, 240, 236, .78); }
.stars svg { display: none; }
.stars .so-leitor { position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
.antigo .contact-icon { display: none; }

/* faixa de serviços no fim dos posts: em linha */
.antigo .ss-inner { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 12px 28px; }

/* estados que o CSS antigo escondia por padrão (os scripts mostram quando precisa) */
.blog-empty { display: none; }
.album.tres figcaption { display: none; }
.post-meta .author-name + .dot { display: none; }
@media (max-width: 860px) {
  .antigo .ext-cidade .container, .antigo .ext-fuso .container, .antigo .ident-sec .container,
  .antigo section:has(> .container > .faq-wrap) > .container, .antigo .final .container { display: block; }
  .antigo .ext-cidade .container > * + *, .antigo .ext-fuso .container > * + *, .antigo .ident-sec .container > * + *,
  .antigo section:has(> .container > .faq-wrap) > .container > * + *, .antigo .final .container > * + * { margin-top: 20px; }
}

/* topo das páginas internas: cabe na tela como o da home; a foto acompanha o texto */
@media (min-width: 861px) {
  .antigo .hero .hero-grid { min-height: min(calc(100svh - 76px), 860px); }
  .antigo .hero .hero-grid > :first-child { gap: clamp(12px, 2.4svh, 22px); padding-block: clamp(16px, 4svh, 40px) clamp(20px, 5svh, 48px); }
  .antigo .hero h1 { font-size: min(var(--t-titulo), 8.5svh); }
  .antigo .hero-photo { position: relative; flex: 1 1 0; min-height: 0; }
  .antigo .hero-photo picture, .antigo .hero-photo img { position: absolute; inset: 0; }
}
