/* Julio Ensina — mockups oficiais 02 e 03, sem reestilizar o layout aprovado */
.je-mockup-background{background:radial-gradient(ellipse at center,rgba(29,51,87,.55),transparent 71%);}
.je-cover-visual{width:100%;height:100%;display:flex;justify-content:center;align-items:center;}
.je-mockup-home{display:block;width:min(100%,232px);height:280px;object-fit:contain;filter:drop-shadow(0 16px 14px rgba(0,0,0,.27));transition:transform .3s ease;}
.je-mockup-background:hover .je-mockup-home{transform:scale(1.045)}
.je-course-visual{margin:0 0 15px;display:grid;place-items:center;min-height:155px;border-radius:16px;background:radial-gradient(ellipse at 50% 50%,rgba(77,90,183,.20),transparent 76%);overflow:hidden;}
.je-course-image{display:block;max-height:180px;width:100%;object-fit:contain;transition:transform .28s ease;}
article:hover .je-course-image{transform:scale(1.035)}
.je-course-details{display:block;text-align:center;margin-top:15px;padding:9px 12px;border:1px solid rgba(154,121,255,.48);background:rgba(124,58,237,.12);border-radius:11px;color:#d4c8ff;text-decoration:none;font-size:13px;font-weight:700;}
.je-course-details:hover{background:rgba(124,58,237,.25);color:#fff;}
.je-price-placeholder[hidden]{display:none!important}
.je-about-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.je-about-link{display:inline-flex;align-items:center;text-decoration:none;background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.30);color:#d6deff;padding:10px 16px;border-radius:99px;font-size:13px;font-weight:650;min-height:43px;transition:background .18s,border-color .18s}
.je-about-link:hover,.je-about-link:focus-visible{background:rgba(99,102,241,.23);border-color:#a5b4fc;color:#fff}
@media(max-width:767px){.je-course-visual{min-height:135px}.je-course-image{max-height:165px}.je-mockup-home{height:240px;max-width:210px}}
@media(prefers-reduced-motion:reduce){.je-mockup-home,.je-course-image{transition:none}.je-mockup-background:hover .je-mockup-home,article:hover .je-course-image{transform:none}}


/* Revisão 2026-11-05 — cartões da vitrine: altura por conteúdo,
   com separação entre capa, título, resumo, status e ações. */
#carouselContainer{align-items:stretch;scroll-padding-inline:4px}
#carouselContainer>article{
  box-sizing:border-box;flex:0 0 320px;min-width:280px;max-width:320px;
  min-height:565px;height:auto;display:flex;flex-direction:column;
  justify-content:flex-start;align-items:stretch;padding:20px;
  position:relative;overflow:hidden;scroll-snap-align:start;
}
#carouselContainer>article>.je-mockup-background{
  display:flex;flex-direction:column;flex:1 1 auto;
  min-width:0;min-height:0;height:auto;position:relative;
  background:none;
}
#carouselContainer>article .je-cover-visual{
  position:relative;box-sizing:border-box;
  width:100%;height:280px;min-height:280px;flex:0 0 280px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;border-radius:12px;
  background:radial-gradient(ellipse at center,rgba(29,51,87,.45),rgba(9,17,32,.10) 75%);
}
#carouselContainer>article .je-mockup-home{
  display:block;flex:none;max-width:95%;width:auto;height:258px;
  object-fit:contain;margin:auto;
}
#carouselContainer>article .je-mockup-background h3{
  display:block;position:static;min-width:0;min-height:0;
  margin:18px 0 9px;font-size:18px;line-height:1.32;
  overflow-wrap:break-word;color:#f6f7ff;
}
#carouselContainer>article .je-mockup-background p{
  position:static;min-width:0;min-height:0;
  margin:0 0 16px;line-height:1.55;font-size:13px;
  color:#b6bfd3;overflow-wrap:break-word;
}
#carouselContainer>article>div:last-child{
  display:flex;flex-direction:column;align-items:stretch;
  flex:0 0 auto;position:relative;min-width:0;
  margin-top:auto;padding-top:14px;border-top:1px solid #30394c;
}
#carouselContainer>article>div:last-child>div:first-child{
  min-height:0;line-height:1.45;margin:0 0 12px;
  overflow-wrap:break-word;
}
#carouselContainer>article>div:last-child>.flex{
  display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;
}
#carouselContainer>article>div:last-child>.flex>*{
  box-sizing:border-box;display:flex;align-items:center;justify-content:center;
  min-height:43px;min-width:0;text-align:center;
  line-height:1.25;text-decoration:none;
}
#carouselContainer>article>div:last-child>.flex>a:first-child{
  flex:1 1 145px;
}
#carouselContainer>article>div:last-child>.flex>a:not(:first-child),
#carouselContainer>article>div:last-child>.flex>span{
  flex:0 1 auto;
}
@media(max-width:600px){
  #carouselContainer>article{flex-basis:min(320px,84vw);min-width:min(280px,84vw);min-height:550px;padding:16px}
  #carouselContainer>article .je-cover-visual{height:255px;min-height:255px;flex-basis:255px}
  #carouselContainer>article .je-mockup-home{height:232px}
  #carouselContainer>article .je-mockup-background h3{font-size:17px}
  #carouselContainer>article .je-mockup-background p{font-size:12.5px}
}
