/* ═══ Blog e posts — cards e página do post ═══
   Extraído do HTML em 14/09/2026 (antes ficava inline em cada página). */

/* ══════════════════════════════════════════
   CARD
══════════════════════════════════════════ */
.elementor-post__card {
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(207,160,72,0.16) !important;
  box-shadow: 0 2px 12px rgba(18,52,24,0.06) !important;
  transition: transform .32s cubic-bezier(.4,0,.2,1), box-shadow .32s ease, border-color .32s ease !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__card {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(18,52,24,0.12) !important;
  border-color: rgba(207,160,72,0.42) !important;
}

/* Thumbnail — CSS de suporte ao JS */
.elementor-post__thumbnail__link {
  display: block !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  line-height: 0 !important;
}
.elementor-post__thumbnail {
  display: block !important;
  overflow: hidden !important;
  width: 100% !important;
  height: 220px !important;
}
.elementor-post__thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .55s cubic-bezier(.25,.46,.45,.94) !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__thumbnail img {
  transform: scale(1.06) !important;
}

/* Conteúdo */
.elementor-post__card .elementor-post__text {
  padding: 20px 22px 22px !important;
  background: #ffffff !important;
  font-family: 'Crimson Pro', Georgia, serif !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}
.elementor-post__card .elementor-post__text::before {
  content: '' !important;
  display: block !important;
  width: 36px !important;
  height: 2px !important;
  background: #cfa048 !important;
  border-radius: 2px !important;
  margin-bottom: 12px !important;
  flex-shrink: 0 !important;
  transition: width .4s ease !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__card .elementor-post__text::before {
  width: 68px !important;
}
.elementor-post__card .elementor-post__title a {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  transition: color .22s ease !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.elementor-post__card .elementor-post__title a:hover {
  color: #cfa048 !important;
  -webkit-text-fill-color: #cfa048 !important;
}
.elementor-post__card .elementor-post__excerpt p {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 15px !important;
  color: rgba(10,67,35,.60) !important;
  -webkit-text-fill-color: rgba(10,67,35,.60) !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.60 !important;
  margin: 0 0 14px !important;
}
.elementor-post__card .elementor-post__read-more-wrapper { margin-top: auto !important; }
.elementor-post__card .elementor-post__read-more {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
  color: #cfa048 !important;
  -webkit-text-fill-color: #cfa048 !important;
  text-decoration: none !important;
  border: none !important;
  padding: 0 !important;
}


/* ══════════════════════════════════════════
   POST INDIVIDUAL — seletores corretos
   (baseados no HTML real do Elementor)
══════════════════════════════════════════ */

/* Título — classe real é elementor-heading-title */
.elementor-widget-theme-post-title .elementor-heading-title {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: clamp(34px, 4vw, 58px) !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.1 !important;
  margin: 0 0 22px !important;
  text-shadow: none !important;
  background: none !important;
}

/* Separador dourado após título */
.elementor-widget-theme-post-title::after {
  content: '' !important;
  display: block !important;
  width: 56px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #cfa048, rgba(207,160,72,.15)) !important;
  border-radius: 2px !important;
  margin-top: 20px !important;
}

/* Imagem destacada */
.elementor-widget-theme-post-featured-image img {
  border-radius: 14px !important;
  box-shadow: 0 8px 36px rgba(18,52,24,0.12) !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Parágrafos — container real do Elementor */
.elementor-widget-theme-post-content .elementor-widget-container p {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  color: rgba(10,67,35,.72) !important;
  -webkit-text-fill-color: rgba(10,67,35,.72) !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.80 !important;
  margin-bottom: 24px !important;
}

/* H2 */
.elementor-widget-theme-post-content .elementor-widget-container h2 {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: clamp(26px, 2.6vw, 36px) !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  margin: 40px 0 16px !important;
  line-height: 1.15 !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(207,160,72,0.22) !important;
}

/* H3 — classe real é wp-block-heading */
.elementor-widget-theme-post-content .elementor-widget-container h3,
.elementor-widget-theme-post-content .elementor-widget-container h3.wp-block-heading {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: clamp(21px, 2vw, 28px) !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  margin: 36px 0 14px !important;
  line-height: 1.2 !important;
}

/* Bold */
.elementor-widget-theme-post-content .elementor-widget-container strong {
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  font-weight: 700 !important;
}

/* Listas — classe real é wp-block-list */
.elementor-widget-theme-post-content .elementor-widget-container ul,
.elementor-widget-theme-post-content .elementor-widget-container ul.wp-block-list {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin: 0 0 24px !important;
}
.elementor-widget-theme-post-content .elementor-widget-container ul li,
.elementor-widget-theme-post-content .elementor-widget-container ul.wp-block-list li {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  color: rgba(10,67,35,.72) !important;
  -webkit-text-fill-color: rgba(10,67,35,.72) !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.72 !important;
  padding-left: 20px !important;
  position: relative !important;
  margin-bottom: 8px !important;
  list-style: none !important;
}
.elementor-widget-theme-post-content .elementor-widget-container ul li::marker,
.elementor-widget-theme-post-content .elementor-widget-container ul.wp-block-list li::marker {
  content: '' !important;
}
.elementor-widget-theme-post-content .elementor-widget-container ul li::before,
.elementor-widget-theme-post-content .elementor-widget-container ul.wp-block-list li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 11px !important;
  width: 6px !important;
  height: 6px !important;
  background: #cfa048 !important;
  border-radius: 50% !important;
  display: block !important;
}
.elementor-widget-theme-post-content .elementor-widget-container ol {
  padding-left: 22px !important;
  margin: 0 0 24px !important;
}
.elementor-widget-theme-post-content .elementor-widget-container ol li {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  color: rgba(10,67,35,.72) !important;
  -webkit-text-fill-color: rgba(10,67,35,.72) !important;
  line-height: 1.72 !important;
  margin-bottom: 8px !important;
}

/* Navegação prev/next */
.elementor-post-navigation__link a {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  text-decoration: none !important;
  transition: color .22s ease !important;
}
.elementor-post-navigation__link a:hover {
  color: #cfa048 !important;
  -webkit-text-fill-color: #cfa048 !important;
}
.elementor-post-navigation__prev .elementor-post-navigation__link__prev,
.elementor-post-navigation__next .elementor-post-navigation__link__next {
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: rgba(10,67,35,.4) !important;
  -webkit-text-fill-color: rgba(10,67,35,.4) !important;
  font-family: 'Crimson Pro', Georgia, serif !important;
}

  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: clamp(34px, 4vw, 58px) !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.1 !important;
  margin: 0 0 22px !important;
  text-shadow: none !important;
  background: none !important;
}

/* Separador dourado após título */
.single-post .elementor-widget-theme-post-title::after {
  content: '' !important;
  display: block !important;
  width: 56px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #cfa048, rgba(207,160,72,.15)) !important;
  border-radius: 2px !important;
  margin-top: 20px !important;
}

/* Meta — data, autor */
.single-post .elementor-post-info,
.single-post .elementor-post-info__item {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 13px !important;
  color: rgba(10,67,35,.45) !important;
  -webkit-text-fill-color: rgba(10,67,35,.45) !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}
.single-post .elementor-post-info .elementor-icon { color: #cfa048 !important; }

/* Imagem destacada */
.single-post .elementor-widget-theme-post-featured-image img,
.single-post .wp-post-image {
  border-radius: 16px !important;
  box-shadow: 0 8px 40px rgba(18,52,24,0.14) !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Parágrafos */
.single-post .entry-content p,
.single-post .elementor-widget-theme-post-content p {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  color: rgba(10,67,35,.72) !important;
  -webkit-text-fill-color: rgba(10,67,35,.72) !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.80 !important;
  margin: 0 0 24px !important;
}

}

/* ══════════════════════════════════════════
   CARD
══════════════════════════════════════════ */
.elementor-post__card {
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(207,160,72,0.16) !important;
  box-shadow: 0 2px 12px rgba(18,52,24,0.06) !important;
  transition: transform .32s cubic-bezier(.4,0,.2,1), box-shadow .32s ease, border-color .32s ease !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__card {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(18,52,24,0.12) !important;
  border-color: rgba(207,160,72,0.42) !important;
}

/* Thumbnail — CSS de suporte ao JS */
.elementor-post__thumbnail__link {
  display: block !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  line-height: 0 !important;
}
.elementor-post__thumbnail {
  display: block !important;
  overflow: hidden !important;
  width: 100% !important;
  height: 220px !important;
}
.elementor-post__thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .55s cubic-bezier(.25,.46,.45,.94) !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__thumbnail img {
  transform: scale(1.06) !important;
}

/* Conteúdo */
.elementor-post__card .elementor-post__text {
  padding: 20px 22px 22px !important;
  background: #ffffff !important;
  font-family: 'Crimson Pro', Georgia, serif !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}
.elementor-post__card .elementor-post__text::before {
  content: '' !important;
  display: block !important;
  width: 36px !important;
  height: 2px !important;
  background: #cfa048 !important;
  border-radius: 2px !important;
  margin-bottom: 12px !important;
  flex-shrink: 0 !important;
  transition: width .4s ease !important;
}
.elementor-post.elementor-grid-item:hover .elementor-post__card .elementor-post__text::before {
  width: 68px !important;
}
.elementor-post__card .elementor-post__title a {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #0a4323 !important;
  -webkit-text-fill-color: #0a4323 !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  transition: color .22s ease !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.elementor-post__card .elementor-post__title a:hover {
  color: #cfa048 !important;
  -webkit-text-fill-color: #cfa048 !important;
}
.elementor-post__card .elementor-post__excerpt p {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 15px !important;
  color: rgba(10,67,35,.60) !important;
  -webkit-text-fill-color: rgba(10,67,35,.60) !important;
  -webkit-text-stroke: 0 !important;
  line-height: 1.60 !important;
  margin: 0 0 14px !important;
}
.elementor-post__card .elementor-post__read-more-wrapper { margin-top: auto !important; }
.elementor-post__card .elementor-post__read-more {
  font-family: 'Crimson Pro', Georgia, serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
  color: #cfa048 !important;
  -webkit-text-fill-color: #cfa048 !important;
  text-decoration: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Post individual */
.single-post h1.entry-title { font-family:'Crimson Pro',Georgia,serif !important; font-size:clamp(32px,3.6vw,52px) !important; font-weight:700 !important; color:#0a4323 !important; -webkit-text-fill-color:#0a4323 !important; -webkit-text-stroke:0 !important; line-height:1.1 !important; }
.single-post .entry-content p, .single-post .elementor-widget-theme-post-content p { font-family:'Crimson Pro',Georgia,serif !important; font-size:19px !important; color:rgba(10,67,35,.72) !important; -webkit-text-fill-color:rgba(10,67,35,.72) !important; -webkit-text-stroke:0 !important; line-height:1.78 !important; margin-bottom:22px !important; }
.single-post .entry-content h2 { font-family:'Crimson Pro',Georgia,serif !important; font-size:clamp(24px,2.4vw,34px) !important; font-weight:700 !important; color:#0a4323 !important; -webkit-text-fill-color:#0a4323 !important; -webkit-text-stroke:0 !important; margin:32px 0 14px !important; }
.single-post .entry-content h3 { font-family:'Crimson Pro',Georgia,serif !important; font-size:clamp(20px,1.9vw,26px) !important; font-weight:700 !important; color:#0a4323 !important; -webkit-text-fill-color:#0a4323 !important; -webkit-text-stroke:0 !important; margin:28px 0 12px !important; }
.single-post .entry-content ul, .single-post .entry-content ol { font-family:'Crimson Pro',Georgia,serif !important; font-size:19px !important; color:rgba(10,67,35,.72) !important; -webkit-text-fill-color:rgba(10,67,35,.72) !important; line-height:1.72 !important; padding-left:22px !important; margin-bottom:22px !important; }
.single-post .entry-content strong { color:#0a4323 !important; -webkit-text-fill-color:#0a4323 !important; font-weight:700 !important; }
