/* Empyre - paginas institucionais, Fale Conosco e Blog (casca nova). Carregado por pagina.php, blog.php e fale-conosco.php (link no corpo da pagina).
   Depende dos tokens de ds.css (.h-ui). Mobile primeiro; sem rolagem horizontal. */

/* ===== Pagina de politica/ajuda (.h-doc) ===== */
.h-ui .h-doc__head { padding-bottom: var(--h-s-5); border-bottom: 1px solid var(--h-n-200); margin-bottom: var(--h-s-6); }
.h-ui .h-doc__date { margin: var(--h-s-3) 0 0; font-size: var(--h-fs-sm); color: var(--h-n-500); }
.h-ui .h-doc__grid { display: grid; gap: var(--h-s-5); }
.h-ui .h-doc__main { min-width: 0; }

/* Sumario: bloco recolhivel no mobile, coluna fixa a partir de 992px (abaixo do cabecalho sticky) */
.h-ui .h-doc__toc { background: var(--h-n-100); border-radius: var(--h-r-lg); }
.h-ui .h-doc__toc summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 0 var(--h-s-4); font: 700 var(--h-fs-sm)/1 var(--h-font-body); letter-spacing: .06em; text-transform: uppercase; color: var(--h-accent-ink); cursor: pointer; list-style: none; }
.h-ui .h-doc__toc summary::-webkit-details-marker { display: none; }
.h-ui .h-doc__toc summary::after { content: ""; width: 10px; height: 10px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform var(--h-t); margin-right: 4px; }
.h-ui .h-doc__toc[open] summary::after { transform: rotate(-135deg); }
.h-ui .h-doc__toc ol { margin: 0; padding: 0 var(--h-s-2) var(--h-s-3); list-style: none; }
.h-ui .h-doc__toc li { margin: 0; padding: 0; }
.h-ui .h-doc__toc a { display: flex; align-items: center; min-height: 44px; padding: 0 var(--h-s-3); font-size: var(--h-fs-base); line-height: 1.3; color: var(--h-n-900); text-decoration: none; border-radius: var(--h-r-sm); border-left: 3px solid transparent; }
.h-ui .h-doc__toc a:hover { background: var(--h-n-0); border-left-color: var(--h-accent); }
.h-ui .h-doc__toc a.is-current { background: var(--h-n-0); border-left-color: var(--h-n-900); font-weight: 700; }
@media (min-width: 992px) {
  .h-ui .h-doc__grid.has-toc { grid-template-columns: 260px minmax(0, 1fr); gap: var(--h-s-8); align-items: start; }
  .h-ui .h-doc__toc { position: sticky; top: 140px; align-self: start; max-height: calc(100vh - 160px); overflow-y: auto; }
}

/* Corpo: h2 serifado, listas e passos numerados */
.h-ui .h-doc__body { font-size: var(--h-fs-base); line-height: 1.7; }
@media (min-width: 768px) { .h-ui .h-doc__body { font-size: var(--h-fs-lg); } }
.h-ui .h-doc__body h2 { scroll-margin-top: 150px; margin: var(--h-s-7) 0 var(--h-s-3); padding-top: var(--h-s-5); border-top: 1px solid var(--h-n-200); font-size: clamp(1.375rem, 1.1rem + 1.1vw, 1.75rem); }
.h-ui .h-doc__body > h2:first-child, .h-ui .h-doc__body > p:first-child + h2 { border-top: 0; padding-top: 0; }
.h-ui .h-doc__body > p:first-child { font-size: var(--h-fs-lg); color: var(--h-n-700); }
.h-ui .h-doc__body ul { padding-left: 1.3em; }
.h-ui .h-doc__body ol { list-style: none; padding: 0; counter-reset: h-step; }
.h-ui .h-doc__body ol > li { position: relative; margin: 0 0 var(--h-s-4); padding: 2px 0 0 48px; counter-increment: h-step; }
.h-ui .h-doc__body ol > li::before { content: counter(h-step); position: absolute; left: 0; top: 0; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; font: 700 var(--h-fs-sm)/1 var(--h-font-body); color: var(--h-n-0); background: var(--h-n-900); border-radius: 999px; }

/* Bloco de destaque: <div class="h-callout"><strong>Titulo</strong><p>texto</p></div> (!important vence o reset de fundo/cor do .h-prose) */
.h-ui .h-prose .h-callout { margin: 0 0 var(--h-s-5); padding: var(--h-s-4) var(--h-s-5); background: var(--h-accent-soft) !important; border-left: 4px solid var(--h-accent); border-radius: var(--h-r-sm); color: var(--h-n-900) !important; }
.h-ui .h-prose .h-callout strong { display: block; margin: 0 0 var(--h-s-1); font: 700 var(--h-fs-sm)/1.2 var(--h-font-body); letter-spacing: .08em; text-transform: uppercase; color: var(--h-accent-ink); }
.h-ui .h-prose .h-callout p { margin: 0; }
.h-ui .h-prose .h-callout p + p { margin-top: var(--h-s-2); }

/* CTA final */
.h-ui .h-doc__cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--h-s-4); max-width: var(--h-measure); margin-top: var(--h-s-7); padding: var(--h-s-5); background: var(--h-n-900); color: var(--h-n-0); border-radius: var(--h-r-lg); }
.h-ui .h-doc__cta .h-h3 { color: var(--h-n-0); }
.h-ui .h-doc__cta p { margin: var(--h-s-1) 0 0; color: #e6e2db; }
.h-ui .h-doc__cta-btns { display: flex; flex-wrap: wrap; gap: var(--h-s-3); }
.h-ui .h-doc__cta .h-btn { background: var(--h-n-0); color: var(--h-n-900); border-color: var(--h-n-0); }
.h-ui .h-doc__cta .h-btn:hover { background: var(--h-accent); border-color: var(--h-accent); }
.h-ui .h-doc__cta .h-btn--outline { background: transparent; color: var(--h-n-0); }
.h-ui .h-doc__cta .h-btn--outline:hover { background: var(--h-n-0); color: var(--h-n-900); }

/* ===== Fale Conosco ===== */
.h-ui .h-channels ul { display: grid; gap: var(--h-s-3); margin: 0 0 var(--h-s-7); padding: 0; list-style: none; }
.h-ui .h-channel { display: flex; align-items: flex-start; gap: var(--h-s-4); margin: 0; padding: var(--h-s-5); background: var(--h-n-100); border-radius: var(--h-r-lg); }
.h-ui .h-channel .i { color: var(--h-accent-ink); margin-top: 2px; }
.h-ui .h-channel p { margin: var(--h-s-1) 0 0; }
.h-ui .h-channel--main { flex-wrap: wrap; background: var(--h-n-900); color: var(--h-n-0); }
.h-ui .h-channel--main .i { color: var(--h-accent); }
.h-ui .h-channel--main .h-h3 { color: var(--h-n-0); }
.h-ui .h-channel--main .h-muted { color: #d9d5cd; }
.h-ui .h-channel--main .h-btn { flex: 1 0 100%; background: var(--h-n-0); color: var(--h-n-900); border-color: var(--h-n-0); }
.h-ui .h-channel--main .h-btn:hover { background: var(--h-accent); border-color: var(--h-accent); }
@media (min-width: 768px) { .h-ui .h-channels ul { grid-template-columns: 1.4fr 1fr 1fr; } }

.h-ui .h-contact__grid { display: grid; gap: var(--h-s-7); }
@media (min-width: 992px) { .h-ui .h-contact__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--h-s-8); align-items: start; } }
.h-ui .h-contact__form .h-h2, .h-ui .h-contact__faq .h-h2 { margin-bottom: var(--h-s-3); }
.h-ui .h-contact__form > .h-muted { margin: 0 0 var(--h-s-5); }
.h-ui .h-contact__error { display: none; margin: 0 0 var(--h-s-4); padding: var(--h-s-4); background: var(--h-err-bg); border-left: 4px solid var(--h-err); border-radius: var(--h-r-sm); color: var(--h-n-900); }
.h-ui .h-contact__error p { margin: 0; }
.h-ui .h-contact__actions { display: flex; align-items: center; gap: var(--h-s-3); margin-bottom: var(--h-s-3); }
.h-ui .h-contact__load { display: none; width: 24px; height: 24px; }
.h-ui .h-contact__sent { padding: var(--h-s-6) var(--h-s-5); text-align: center; background: var(--h-ok-bg); border-radius: var(--h-r-lg); }
.h-ui .h-contact__sent .i { color: var(--h-ok); }
.h-ui .h-contact__sent p { margin: var(--h-s-2) 0 0; }

.h-ui .h-faq details { border-bottom: 1px solid var(--h-n-200); }
.h-ui .h-faq details:first-child { border-top: 1px solid var(--h-n-200); }
.h-ui .h-faq summary { position: relative; display: flex; align-items: center; min-height: 56px; padding: var(--h-s-2) 40px var(--h-s-2) 0; font-weight: 700; cursor: pointer; list-style: none; }
.h-ui .h-faq summary::-webkit-details-marker { display: none; }
.h-ui .h-faq summary::after { content: ""; position: absolute; right: 6px; top: 50%; width: 9px; height: 9px; margin-top: -7px; border-right: 2px solid var(--h-n-900); border-bottom: 2px solid var(--h-n-900); transform: rotate(45deg); transition: transform var(--h-t); }
.h-ui .h-faq details[open] summary::after { transform: rotate(-135deg); margin-top: -3px; }
.h-ui .h-faq details p { margin: 0 0 var(--h-s-4); max-width: 60ch; color: var(--h-n-700); }

.h-ui .h-helplinks { margin-top: var(--h-s-8); padding-top: var(--h-s-5); border-top: 1px solid var(--h-n-200); }
.h-ui .h-helplinks ul { display: grid; gap: var(--h-s-2); margin: var(--h-s-4) 0 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .h-ui .h-helplinks ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .h-ui .h-helplinks ul { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.h-ui .h-helplinks a { display: flex; align-items: center; justify-content: space-between; gap: var(--h-s-3); min-height: 56px; padding: 0 var(--h-s-4); font-weight: 700; color: var(--h-n-900); text-decoration: none; border: 1px solid var(--h-n-200); border-radius: var(--h-r-sm); }
.h-ui .h-helplinks a:hover { border-color: var(--h-n-900); background: var(--h-n-100); }

/* ===== Blog: cabecalho, chips e cards ===== */
.h-ui .h-bloghead { margin-bottom: var(--h-s-5); }
.h-ui .h-chips { margin: var(--h-s-5) calc(var(--h-gutter) * -1) 0; }
.h-ui .h-chips ul { display: flex; gap: var(--h-s-2); margin: 0; padding: 2px var(--h-gutter); list-style: none; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
.h-ui .h-chips ul::-webkit-scrollbar { display: none; }
.h-ui .h-chips li { flex: none; margin: 0; padding: 0; }
.h-ui .h-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 var(--h-s-4); font: 700 var(--h-fs-sm)/1 var(--h-font-body); color: var(--h-n-900); text-decoration: none; background: var(--h-n-0); border: 1.5px solid var(--h-n-300); border-radius: 999px; white-space: nowrap; }
.h-ui .h-chip:hover { border-color: var(--h-n-900); background: var(--h-n-100); }
.h-ui .h-chip.is-active { color: var(--h-n-0); background: var(--h-n-900); border-color: var(--h-n-900); }
.h-ui .h-chip__n { font-weight: 400; color: var(--h-n-500); }
.h-ui .h-chip.is-active .h-chip__n { color: #d9d5cd; }
@media (min-width: 992px) { .h-ui .h-chips { margin-inline: 0; } .h-ui .h-chips ul { flex-wrap: wrap; padding-inline: 0; overflow: visible; } }
.h-ui .h-post { transition: box-shadow var(--h-t), border-color var(--h-t); }
.h-ui .h-post:hover { border-color: var(--h-n-300); box-shadow: var(--h-sh-1); }
.h-ui .h-post__media img { transition: transform 300ms ease; }
.h-ui .h-post:hover .h-post__media img { transform: scale(1.03); }
@media (prefers-reduced-motion: reduce) { .h-ui .h-post:hover .h-post__media img { transform: none; } }
.h-ui .h-post__text { display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

/* ----- Favoritos ----- */
.h-ui .h-fav-head { display: grid; gap: var(--h-s-4); align-items: end; padding: var(--h-s-5); border: 1px solid var(--h-n-200); border-radius: var(--h-r-md, 12px); background: radial-gradient(60% 140% at 100% 0%, rgba(201, 164, 92, .18), transparent 65%), var(--h-n-50, #faf8f4); }
.h-ui .h-fav-head__sub { margin: var(--h-s-2) 0 0; max-width: 52ch; color: var(--h-n-700); }
.h-ui .h-fav-head__side { display: flex; flex-wrap: wrap; gap: var(--h-s-3); align-items: center; }
.h-ui .h-fav-count { font: 700 var(--h-fs-sm)/1 var(--h-font-body); padding: 8px 14px; border-radius: 999px; background: var(--h-n-900); color: var(--h-n-0); }
.h-ui .h-fav-count:empty { display: none; }
.h-ui .h-fav-off { margin-top: var(--h-s-5); }
@media (min-width: 768px) { .h-ui .h-fav-head { grid-template-columns: 1fr auto; padding: var(--h-s-6); } }
