/* ==========================================================================
   Artigos (Gutenberg) e páginas de texto
   ========================================================================== */

.article__hero .hero-page__inner { padding-top: clamp(64px, 7vw, 106px); padding-bottom: clamp(48px, 6vw, 80px); }
.article__crumbs { display: flex; flex-wrap: wrap; gap: 8px; }
.article__crumbs a:hover { color: var(--white); }
.article__title { margin-top: 18px; color: var(--white); max-width: 900px; }
.article__meta { margin-top: 18px; font-size: 15px; color: rgba(255, 255, 255, .78); }

.article__cover { margin-top: clamp(-48px, -3vw, -24px); position: relative; z-index: 2; }
.article__cover img {
  width: 100%;
  max-height: 560px;
  object-fit: cover;
  border-radius: var(--radius-card) var(--radius-arco-lg) var(--radius-card) var(--radius-card);
}

.article__content { max-width: 760px; margin: clamp(40px, 5vw, 72px) auto 0; }
.article__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: 760px;
  margin: 48px auto var(--section-y);
  padding-top: 32px;
  border-top: 1px solid var(--concrete-100);
}
.article__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.article__tags a { display: inline-flex; padding: 6px 14px; border: 1px solid var(--concrete-200); border-radius: var(--radius-pill); font-size: 13px; color: var(--gray-600); }
.article__tags a:hover { border-color: var(--blue-600); color: var(--blue-600); }

/* ---- Conteúdo ------------------------------------------------------------ */
.entry-content { font-size: 18px; line-height: 1.7; color: var(--gray-600); }
.entry-content > * + * { margin-top: 1.25em; }
.entry-content h2,
.entry-content h3,
.entry-content h4 { font-family: var(--font-display); color: var(--graphite); letter-spacing: -.015em; }
.entry-content h2 { margin-top: 2em; font-weight: 300; font-size: clamp(26px, 2.4vw, 32px); line-height: 1.3; }
.entry-content h3 { margin-top: 1.75em; font-weight: 400; font-size: 24px; line-height: 1.3; }
.entry-content h4 { margin-top: 1.5em; font-weight: 500; font-size: 19px; }
.entry-content a { color: var(--blue-600); text-decoration: underline; text-underline-offset: 3px; }
.entry-content a:hover { color: var(--blue-500); }
.entry-content strong { color: var(--graphite); font-weight: 600; }
.entry-content ul,
.entry-content ol { padding-left: 1.25em; }
.entry-content li + li { margin-top: .4em; }
.entry-content li::marker { color: var(--blue-500); }
.entry-content img { border-radius: var(--radius-card); }
.entry-content figcaption { margin-top: 8px; font-size: 14px; color: var(--gray-500); text-align: center; }
.entry-content blockquote,
.entry-content .wp-block-quote {
  margin-inline: 0;
  padding: 8px 0 8px 24px;
  border-left: 3px solid var(--sky-300);
  font-family: var(--font-display);
  font-weight: 300;
  font-size: 24px;
  line-height: 1.45;
  color: var(--graphite);
}
.entry-content blockquote cite { display: block; margin-top: 12px; font-family: var(--font-body); font-size: 14px; font-style: normal; color: var(--gray-500); }
.entry-content .wp-block-pullquote { padding: 32px; border: 0; border-radius: var(--radius-card); background: var(--concrete-50); }
.entry-content .wp-block-pullquote blockquote { border: 0; padding: 0; text-align: center; }
.entry-content hr,
.entry-content .wp-block-separator { border: 0; border-top: 1px solid var(--concrete-200); margin-block: 2.5em; }
.entry-content table { width: 100%; border-collapse: collapse; font-size: 16px; }
.entry-content th,
.entry-content td { padding: 12px 14px; border-bottom: 1px solid var(--concrete-100); text-align: left; }
.entry-content th { color: var(--graphite); font-weight: 600; }
.entry-content .wp-block-button__link {
  padding: 15px 30px;
  border-radius: var(--radius-pill);
  background: var(--sky-300);
  color: var(--navy-900);
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
}
.entry-content .is-style-outline .wp-block-button__link { background: var(--white); border: 1.5px solid var(--concrete-200); color: var(--navy-800); }
.entry-content .wp-block-embed iframe { width: 100%; border-radius: var(--radius-card); }
.entry-content .alignwide { max-width: 1080px; margin-inline: calc((760px - min(1080px, 100vw - 2 * var(--gutter))) / 2); }
.entry-content .alignfull { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); }
.entry-content .alignfull img { border-radius: 0; }

@media (max-width: 1199px) {
  .entry-content .alignwide { margin-inline: 0; }
}
@media (max-width: 575px) {
  .entry-content { font-size: 17px; }
}
