/* Echospitalidade V11.37.3-R16.3 — autoridade única da página Academia. */

/*
 * A R16.3 substitui as duas autoridades recentes da Academia (R16.1/R16.2).
 * Não existem alturas fixas globais. Cada linha assume apenas a altura do seu
 * conteúdo mais alto; os CTAs continuam alinhados pelo próprio CSS Grid/Flex.
 */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap{
  --ecoa-r163-gap:14px;
  --ecoa-r163-border:#d7e4e1;
  --ecoa-r163-radius:16px;
  --ecoa-r163-shadow:0 7px 20px rgba(14,60,57,.065);
}

/* Formatos e catálogo: geometria estável, sem carrossel e sem rows 1fr globais. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #formatos-academia#formatos-academia,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row dense!important;
  grid-auto-columns:auto!important;
  grid-auto-rows:auto!important;
  align-items:stretch!important;
  justify-content:start!important;
  width:100%!important;
  max-width:1180px!important;
  gap:var(--ecoa-r163-gap)!important;
  padding:0!important;
  overflow:visible!important;
  overflow-x:visible!important;
  scroll-snap-type:none!important;
}

/* Os quatro formatos deixam de ter altura fixa de 752/727 px. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #formatos-academia#formatos-academia > article.path-card.path-card,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #formatos-academia#formatos-academia > article{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-self:stretch!important;
  overflow:visible!important;
}

/* Catálogo: anula explicitamente a altura fixa de 711/635 px da R16.1. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.course-slide.course-slide,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-self:stretch!important;
  margin:0!important;
  padding:10px 11px 11px!important;
  gap:5px!important;
  overflow:hidden!important;
  border:1px solid var(--ecoa-r163-border)!important;
  border-radius:var(--ecoa-r163-radius)!important;
  background:#fff!important;
  box-shadow:var(--ecoa-r163-shadow)!important;
  flex:initial!important;
  flex-basis:auto!important;
  --e101-carousel-card-height:auto!important;
  --ecoa-v1514-equal-h:auto!important;
  --ecoa-v1513-equal-h:auto!important;
  transition:none!important;
  animation:none!important;
}

/* O visual ocupa espaço útil, sem alongar o card. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article :is(.card-visual,.ecoa-v1514-media,.ecoa-v124-course-visual,.ecoa-v124-course-imagebox,.ecoa-v140-card-visual,.ecoa-v101-card__icon){
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:104px!important;
  min-height:104px!important;
  max-height:104px!important;
  margin:0 0 3px!important;
  padding:6px!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:12px!important;
  background:#eef6f4!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article :is(.card-visual,.ecoa-v1514-media,.ecoa-v124-course-visual,.ecoa-v124-course-imagebox,.ecoa-v140-card-visual,.ecoa-v101-card__icon) img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:92px!important;
  object-fit:contain!important;
  margin:auto!important;
}

/* Tipografia e chips compactos, sem clamping nem overflow. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article :is(h2,h3,h4,p,li,.sec-intro,.course-price,.format-chips){
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow-wrap:anywhere!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article :is(h2,h3,h4){
  margin:2px 0 3px!important;
  line-height:1.2!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article p{
  margin:0 0 3px!important;
  line-height:1.38!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article .format-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  margin:2px 0!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article .course-price{
  margin:2px 0!important;
}

/* CTA fecha cada card no fundo da própria linha, sem gerar uma altura global. */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article :is(a.btn,.btn,.ecoa-v101-card__actions,.ecoa-v127-actions){
  margin-top:auto!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article a.btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:38px!important;
  padding:6px 9px!important;
  white-space:normal!important;
}

/*
 * VSME: é o 11.º curso na baseline R16.2 e recebe também marcação semântica JS.
 * O nth-child é um fallback determinístico para que a largura dupla exista já
 * no primeiro paint, mesmo antes de qualquer JS da página terminar.
 */
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11){
  grid-column:span 2!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide :is(.card-visual,.ecoa-v1514-media,.ecoa-v124-course-visual,.ecoa-v124-course-imagebox,.ecoa-v140-card-visual,.ecoa-v101-card__icon),
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11) :is(.card-visual,.ecoa-v1514-media,.ecoa-v124-course-visual,.ecoa-v124-course-imagebox,.ecoa-v140-card-visual,.ecoa-v101-card__icon){
  height:116px!important;
  min-height:116px!important;
  max-height:116px!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide .course-price,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11) .course-price{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px 12px!important;
  align-items:start!important;
}
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide .course-price > *,
body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11) .course-price > *{
  min-width:0!important;
  max-width:100%!important;
}

@media (max-width:999px){
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #formatos-academia#formatos-academia,
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide,
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11){
    grid-column:span 2!important;
  }
}

@media (max-width:619px){
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #formatos-academia#formatos-academia,
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide,
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11){
    grid-column:auto!important;
  }
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article.ecoa-r163-course-wide .course-price,
  body:is(.ecoa-v7-route-academia,.ecoa-v101-route-academia) #wrap #ecoa-course-carousel#ecoa-course-carousel > article:nth-child(11) .course-price{
    grid-template-columns:1fr!important;
  }
}
