/*
 * Journal — cartões de artigo
 *
 * Estilo do widget Posts (skin Cards) da página Journal.
 * Antes vivia num widget HTML dentro da página e dependia do ID interno do widget.
 * Agora depende da classe .tcc-journal-grid, aplicada no widget Posts
 * (Avançado > Classes CSS). Conteúdo original preservado.
 */
:root{--jh-mineral:#E8D9D8;--jh-bone:#EFE8DE;--jh-aqua:#DCE8E4;--jh-vinho:#6D2735;--jh-trace:#9A3047;--jh-offset:5px;}
@media (min-width:768px){:root{--jh-offset:8px;}}

.tcc-journal-grid .elementor-post__avatar,
.tcc-journal-grid .elementor-post__meta-data{display:none !important;}

.tcc-journal-grid .elementor-post__card{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  border-radius:0 !important;
  overflow:visible !important;
}
.tcc-journal-grid .elementor-posts-container{overflow:visible !important;}
.tcc-journal-grid .elementor-post{overflow:visible !important;}

/* ---- Featured image height (width already 100% natively) ---- */
.tcc-journal-grid .elementor-post__thumbnail{
  height:260px !important;
  transition:transform 450ms cubic-bezier(.22,1,.36,1);
}
@media (min-width:768px){
  .tcc-journal-grid .elementor-post__thumbnail{height:300px !important;}
}

.tcc-journal-grid .elementor-post__thumbnail__link{
  position:relative;
  overflow:visible;
}
.tcc-journal-grid .elementor-post__thumbnail__link::before{
  content:"";
  position:absolute;
  top:var(--jh-offset);
  left:var(--jh-offset);
  right:calc(-1 * var(--jh-offset));
  bottom:calc(-1 * var(--jh-offset));
  z-index:-1;
  transition:transform 400ms cubic-bezier(.22,1,.36,1);
}
.tcc-journal-grid .elementor-post:nth-child(3n+1) .elementor-post__thumbnail__link::before{background:var(--jh-mineral);}
.tcc-journal-grid .elementor-post:nth-child(3n+2) .elementor-post__thumbnail__link::before{background:var(--jh-bone);}
.tcc-journal-grid .elementor-post:nth-child(3n+3) .elementor-post__thumbnail__link::before{background:var(--jh-aqua);}

/* ---- Category badge: plain text below the image, not an overlay ---- */
.tcc-journal-grid .elementor-post__badge{
  position:static !important;
  display:block !important;
  background:transparent !important;
  color:var(--jh-vinho) !important;
  font-family:Inter,Arial,sans-serif !important;
  font-size:10.88px !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
  padding:0 !important;
  border-radius:0 !important;
  margin:24px 0 0 !important;
  border-top:1px solid rgba(46,42,40,.15) !important;
  padding-top:24px !important;
}

/* ---- Title ---- */
.tcc-journal-grid .elementor-post__title{
  margin:16px 0 0 !important;
}
.tcc-journal-grid .elementor-post__title a{
  font-family:"FrauncesSoftWonk",serif !important;
  font-optical-sizing:auto !important;
  font-weight:500 !important;
  line-height:1.1 !important;
  color:#2E2A28 !important;
  text-decoration:none !important;
  font-size:24px !important;
}
@media (min-width:768px){
  .tcc-journal-grid .elementor-post__title a{font-size:32px !important;}
}

/* ---- Excerpt ---- */
.tcc-journal-grid .elementor-post__excerpt{
  margin:16px 0 0 !important;
}
.tcc-journal-grid .elementor-post__excerpt p{
  font-family:Inter,Arial,sans-serif !important;
  font-size:16px !important;
  line-height:1.625 !important;
  color:rgba(46,42,40,.80) !important;
  margin:0 !important;
}

/* ---- Read Article ---- */
.tcc-journal-grid .elementor-post__read-more{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:20px 0 0 !important;
  font-family:Inter,Arial,sans-serif !important;
  font-size:14px !important;
  font-weight:normal !important;
  color:var(--jh-vinho) !important;
  text-decoration:none !important;
  border-bottom:none !important;
}

.tcc-journal-grid .jh-trace{
  position:absolute;
  left:12px;
  bottom:-8px;
  width:42px;
  height:1px;
  background:var(--jh-trace);
  transform-origin:left center;
  transition:width 350ms cubic-bezier(.22,1,.36,1);
  z-index:2;
}

@media (hover:hover) and (pointer:fine){
  .tcc-journal-grid .elementor-post__thumbnail__link:hover .elementor-post__thumbnail{transform:scale(1.015);}
  .tcc-journal-grid .elementor-post__thumbnail__link:hover::before{transform:translate(3px,3px);}
  .tcc-journal-grid .elementor-post__thumbnail__link:hover .jh-trace{width:58px;}
}

@media (prefers-reduced-motion:reduce){
  .tcc-journal-grid .elementor-post__thumbnail__link:hover .elementor-post__thumbnail,
  .tcc-journal-grid .elementor-post__thumbnail__link:hover::before{transform:none !important;}
}

.tcc-journal-title .elementor-heading-title{font-family:"FrauncesSoftWonk",serif !important;}

/* ---- Section width/padding parity with the static reference (.j-wrap) ---- */
.tcc-journal-posts{
  max-width:1440px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}
@media (min-width:768px){
  .tcc-journal-posts{padding-left:40px !important;padding-right:40px !important;}
}

/* ---- Grid gaps per breakpoint ---- */
.tcc-journal-grid .elementor-posts-container{
  row-gap:40px !important;
  column-gap:40px !important;
}
@media (min-width:768px) and (max-width:1023px){
  .tcc-journal-grid .elementor-posts-container{
    column-gap:32px !important;
    row-gap:48px !important;
  }
}
@media (min-width:1024px){
  .tcc-journal-grid .elementor-posts-container{
    column-gap:40px !important;
    row-gap:40px !important;
  }
}
