/* Tema Wellbi — o que muda por ser WordPress: reset dos blocos dentro das secoes da landing, o bloco Botao nas
   variantes do Figma, texto corrido (paginas e posts), cabecalho de pagina interna, blog e menu do celular. */

/* ── Reset dentro das secoes da landing ──
   :where() tem especificidade ZERO de proposito: tira a margem que paragrafo/figura/titulo trazem, mas qualquer
   regra de componente (ex.: .lp-hero__sub { margin-top: 24px }) continua vencendo. */
:where(.lp-nav, .lp-hero, .lp-section, .lp-video, .lp-cta, .lp-footer, .lp-page-head) :where(h1, h2, h3, h4, p, ul, ol, figure, dl, dd) { margin: 0; }
:where(.lp-nav, .lp-hero, .lp-section, .lp-video, .lp-cta, .lp-footer) :where(ul) { padding: 0; list-style: none; }
:where(.lp-nav, .lp-hero, .lp-section, .lp-video, .lp-cta, .lp-footer) a:where(:not(.wp-element-button)) { text-decoration: none; }

/* ── Bloco Botao: Primario (padrao do theme.json) + variantes escolhiveis no painel ── */
.wp-block-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.wp-block-button__link { text-decoration: none; transition: background-color 0.15s ease, color 0.15s ease; }
.wp-block-button.is-style-wellbi-outline > .wp-block-button__link { background: var(--lp-white); color: var(--lp-primary); box-shadow: inset 0 0 0 1px var(--lp-border), var(--lp-shadow-xs); }
.wp-block-button.is-style-wellbi-outline > .wp-block-button__link:hover { background: var(--lp-chip); color: var(--lp-primary); }
.wp-block-button.is-style-wellbi-ghost > .wp-block-button__link { background: transparent; color: var(--lp-primary); }
.wp-block-button.is-style-wellbi-ghost > .wp-block-button__link:hover { background: var(--lp-chip); color: var(--lp-primary); }
.wp-block-button.is-style-wellbi-secondary > .wp-block-button__link { background: var(--lp-chip); color: var(--lp-primary); }
.wp-block-button.is-style-wellbi-secondary > .wp-block-button__link:hover { background: var(--lp-white); color: var(--lp-primary); }
.wp-block-button.lp-btn--sm > .wp-block-button__link { padding: 8px 16px; font-size: 14px; line-height: 1.43; }
/* seta do "Ver como funciona" — no CSS para o texto do botao continuar editavel no painel */
.wp-block-button.lp-btn--arrow > .wp-block-button__link { display: inline-flex; align-items: center; gap: 8px; }
.wp-block-button.lp-btn--arrow > .wp-block-button__link::after { content: ''; width: 16px; height: 16px; background: url(../images/icons/move-down.svg) center / 16px no-repeat; }

/* ── Cabecalho de pagina interna ── */
.lp-page-head { background: var(--lp-bg-alt); padding-block: clamp(48px, 6vw, 88px); text-align: center; }
.lp-page-head .lp-section__head { margin: 0; }
.lp-page-head .wp-block-post-title, .lp-page-head h1 { font: 700 clamp(30px, 3.6vw, 48px)/1.15 var(--lp-font-title); color: var(--lp-ink); }
.lp-page-head .lp-section__sub { margin-inline: auto; }

/* ── Texto corrido (paginas de texto e posts) ──
   Largura de LEITURA (~70 caracteres) — a unica excecao permitida a "tela inteira", e e para o bloco de texto.
   Cor do corpo e o texto principal, nunca o secundario: post e termos sao lidos inteiros, precisam de AA. */
.lp-prose { max-width: 760px; margin-inline: auto; padding: clamp(40px, 5vw, 72px) 16px; box-sizing: border-box; font: 400 17px/1.75 var(--lp-font-body); color: var(--lp-ink); }
.lp-prose > * { margin-block: 0; }
.lp-prose > * + * { margin-block-start: 1.25em; }
.lp-prose > :where(h2, h3, h4) { margin-block-start: 2em; }
.lp-prose h2 { font-size: clamp(22px, 2.2vw, 30px); }
.lp-prose h3 { font-size: clamp(18px, 1.7vw, 22px); }
.lp-prose a { text-decoration: underline; text-underline-offset: 2px; }
.lp-prose :where(ul, ol) { padding-left: 1.4em; }
.lp-prose li + li { margin-top: 0.4em; }
.lp-prose blockquote { margin-inline: 0; padding: 16px 24px; background: var(--lp-chip); border-left: 4px solid var(--lp-primary); border-radius: 0 16px 16px 0; }
.lp-prose img { border-radius: 12px; }
.lp-prose .wp-block-image figcaption { font-size: 14px; color: var(--lp-text-2); text-align: center; }

/* ── Post individual ── */
.lp-post-meta { display: flex; justify-content: center; gap: 12px; margin-top: 16px; font: 400 14px/1.5 var(--lp-font-body); color: var(--lp-text-2); }
.lp-post-cover { max-width: 1032px; margin: clamp(-40px, -4vw, -24px) auto 0; padding-inline: 16px; }
.lp-post-cover img { width: 100%; height: auto; border-radius: clamp(8px, 1.67vw, 24px); box-shadow: 0 4px 32px rgba(22, 72, 112, 0.12); display: block; }

/* ── Blog (lista de posts) ── */
.lp-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.lp-post-card { display: flex; flex-direction: column; gap: 12px; height: 100%; padding: 0; overflow: hidden; }
.lp-post-card .wp-block-post-featured-image { margin: 0; aspect-ratio: 16 / 9; overflow: hidden; }
.lp-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lp-post-card__body { display: flex; flex-direction: column; gap: 8px; padding: 0 24px 24px; flex: 1; }
.lp-post-card .wp-block-post-date { font: 400 13px/1.5 var(--lp-font-body); color: var(--lp-text-2); margin-top: 20px; }
.lp-post-card .wp-block-post-title { font: 700 18px/1.4 var(--lp-font-title); margin: 0; }
.lp-post-card .wp-block-post-title a { color: var(--lp-ink); text-decoration: none; }
.lp-post-card .wp-block-post-title a:hover { color: var(--lp-primary); }
.lp-post-card .wp-block-post-excerpt__excerpt { font: 400 15px/1.6 var(--lp-font-body); color: var(--lp-ink); margin: 0; }
.lp-empty { text-align: center; font: 400 16px/1.6 var(--lp-font-body); color: var(--lp-ink); }
.wp-block-query-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 40px; font: 500 15px/1.5 var(--lp-font-ui); }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { padding: 8px 14px; border-radius: 8px; color: var(--lp-primary); text-decoration: none; }
.wp-block-query-pagination .current { background: var(--lp-primary); color: var(--lp-btn-ink); }

/* ── Busca ── */
.wp-block-search__inside-wrapper { gap: 8px; }
.wp-block-search__input { border: 1px solid var(--lp-border); border-radius: 8px; padding: 10px 14px; font: 400 16px/1.5 var(--lp-font-body); }

/* ── Menu no celular (overlay do bloco Navegacao) ── */
.lp-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--lp-white); padding: 24px; }
.lp-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font: 600 20px/1.6 var(--lp-font-title); color: var(--lp-ink); }
.lp-nav .wp-block-navigation__responsive-container-open svg { fill: var(--lp-ink); }

@media (max-width: 1023.98px) {
  .lp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .lp-post-grid { grid-template-columns: 1fr; }
  .lp-nav__actions .wp-block-button:first-child { display: none; } /* no celular fica so "Acesso colaborador" */
}

/* ── Contato ── */
.lp-contact__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; max-width: 960px; margin-inline: auto; }
.lp-contact__card { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.lp-contact__card .lp-card__title { margin-top: 0; }
.lp-contact__card .wp-block-buttons { margin-top: auto; padding-top: 16px; }
