/* Echospitalidade V11.37.5-R16.5 — autoridade única de Caminhos: grelha real, sempre à esquerda. */

/*
 * Escopo exclusivo: /caminhos.
 * R16.5 não depende de remover a classe histórica de carousel. Em vez disso,
 * converte o track REAL em CSS Grid, preservando referências e filtros legados.
 * Assim 1, 2 ou 3 cards ocupam as primeiras colunas, sem centralização e sem scrollbar.
 */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap{
  --ecoa-r165-gap:14px;
  --ecoa-r165-border:#d7e4e1;
  --ecoa-r165-radius:16px;
  --ecoa-r165-shadow:0 7px 20px rgba(14,60,57,.065);
  --ecoa-r165-media:#eef6f4;
}

/* Grupo editorial inteiro: nunca estreito, nunca centrado pelo número de cards. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group.ecoa-r165-path-group,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-group.ecoa-r165-path-group{
  box-sizing:border-box!important;
  display:block!important;
  width:min(1180px,calc(100% - 32px))!important;
  min-width:0!important;
  max-width:1180px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:8px auto 24px!important;
  padding:0!important;
  overflow:visible!important;
  text-align:left!important;
  justify-content:flex-start!important;
  align-items:initial!important;
  transform:none!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-section{
  min-height:0!important;height:auto!important;max-height:none!important;
  padding-top:2px!important;padding-bottom:2px!important;overflow:visible!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group .ecoa-v101-group-head,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group > :is(h2,h3,.ecoa-v101-group-head){
  box-sizing:border-box!important;display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;
  width:100%!important;margin:0 0 8px!important;padding:0!important;gap:8px!important;text-align:left!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group :is(.ecoa-v101-group-head__title,h2,h3){
  margin-left:0!important;margin-right:0!important;text-align:left!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group :is(.ecoa-v101-group-head__hint,.ecoa-v101-carousel-controls,.carousel-controls,[data-carousel-prev],[data-carousel-next]){
  display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;
}

/*
 * O alvo principal. A classe .ecoa-v101-carousel pode continuar no DOM por compatibilidade,
 * mas deixa de ter qualquer comportamento de carousel em Caminhos.
 */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-catalogue__grid.ecoa-r165-track,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .o_svc_grid.ecoa-r165-track,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track.ecoa-r165-track{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-columns:auto!important;
  grid-auto-rows:auto!important;
  align-items:stretch!important;
  align-content:start!important;
  justify-items:stretch!important;
  justify-content:start!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  gap:var(--ecoa-r165-gap)!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  flex:none!important;
  flex-flow:initial!important;
  scroll-snap-type:none!important;
  scroll-padding:0!important;
  overscroll-behavior:auto!important;
  transform:none!important;
  transition:none!important;
  scrollbar-width:none!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel::-webkit-scrollbar,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel::after,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track::after{content:none!important;display:none!important}

/* Wrappers intermédios entre track e card deixam de criar colunas artificiais. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-flatten.ecoa-r165-flatten{display:contents!important}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-cell.ecoa-r165-cell{
  min-width:0!important;max-width:none!important;width:auto!important;margin:0!important;padding:0!important;
  justify-self:stretch!important;align-self:stretch!important;flex:none!important;transform:none!important;
}

/* Card REAL: sempre na próxima célula disponível, nunca grid-column 2/3, nunca justify-self:center. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel .ecoa-v101-card.ecoa-v101-card,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card.ecoa-r165-card{
  box-sizing:border-box!important;
  display:flex!important;
  flex:none!important;
  flex-basis:auto!important;
  flex-direction:column!important;
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:10px 11px 11px!important;
  gap:5px!important;
  overflow:hidden!important;
  border:1px solid var(--ecoa-r165-border)!important;
  border-radius:var(--ecoa-r165-radius)!important;
  background:#fff!important;
  box-shadow:var(--ecoa-r165-shadow)!important;
  transform:none!important;
  transition:none!important;
  animation:none!important;
  scroll-snap-align:none!important;
  --e101-carousel-card-height:auto!important;
  --ecoa-v1514-equal-h:auto!important;
  --ecoa-v1513-equal-h:auto!important;
  --ecoa-v1513-path-equal-h:auto!important;
  --ecoa-v1513-path-min-h:0px!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card.ecoa-r165-card *{box-sizing:border-box!important;min-width:0!important}

/* Topo e media: proporção estável e sem achatamento. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__top{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;gap:5px!important;background:transparent!important;color:inherit!important;text-align:left!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-media.ecoa-r165-media{
  box-sizing:border-box!important;display:grid!important;place-items:center!important;
  width:100%!important;height:108px!important;min-height:108px!important;max-height:108px!important;
  margin:0 0 3px!important;padding:6px 9px!important;overflow:hidden!important;
  border:0!important;border-radius:12px!important;background:var(--ecoa-r165-media)!important;
  transform:none!important;transition:none!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-media.ecoa-r165-media > img,
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-media.ecoa-r165-media img{
  display:block!important;position:static!important;
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  max-width:96%!important;max-height:96px!important;margin:auto!important;padding:0!important;
  object-fit:contain!important;object-position:center!important;aspect-ratio:auto!important;
  transform:scale(1.06)!important;transform-origin:center!important;
  filter:none!important;image-rendering:auto!important;transition:none!important;animation:none!important;
}

/* Corpo compacto: sem min-height histórico nem grandes vazios. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v101-card__name,h3,h4){
  height:auto!important;min-height:0!important;max-height:none!important;margin:2px 0 3px!important;
  color:#0e3c39!important;font-size:16px!important;line-height:1.2!important;text-align:left!important;
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__badge{
  align-self:flex-start!important;display:inline-flex!important;width:auto!important;max-width:100%!important;min-height:0!important;
  margin:0 0 2px!important;padding:3px 7px!important;border:1px solid #dbe7e4!important;border-radius:999px!important;
  background:#f7faf9!important;color:#45635f!important;font-size:10.5px!important;line-height:1.2!important;white-space:normal!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__body{
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;width:100%!important;
  min-height:0!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;gap:4px!important;text-align:left!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v101-card__summary,.ecoa-v101-card__list li,p){
  height:auto!important;min-height:0!important;max-height:none!important;margin-top:0!important;margin-bottom:3px!important;
  font-size:12.3px!important;line-height:1.36!important;white-space:normal!important;overflow:visible!important;
  text-overflow:clip!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important;overflow-wrap:anywhere!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__list{
  display:flex!important;flex-direction:column!important;gap:3px!important;margin:1px 0 3px!important;padding:0!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__price{
  margin:2px 0 3px!important;color:#0e3c39!important;font-size:16px!important;line-height:1.16!important;
}

/* Metadados como Online / Em direto / Aulas conjuntas / Duração. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__meta{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;
  gap:5px!important;width:100%!important;margin:3px 0!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v101-chip,.ecoa-v101-card__chip){
  display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:27px!important;
  margin:0!important;padding:4px 7px!important;border:1px solid #d7e4e1!important;border-radius:8px!important;
  background:#f5faf8!important;color:#355552!important;font-size:10.5px!important;line-height:1.22!important;
  white-space:normal!important;overflow-wrap:anywhere!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__note{
  margin:2px 0!important;color:#5b6e70!important;font-size:10.8px!important;line-height:1.3!important;
}

/* Ações: CTA principal inteiro; secundários na linha seguinte. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v127-actions,.ecoa-v101-card__actions){
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(34px,auto)!important;
  width:100%!important;gap:5px!important;margin-top:auto!important;padding-top:7px!important;align-content:end!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v127-actions,.ecoa-v101-card__actions) > a{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:34px!important;
  margin:0!important;padding:5px 7px!important;border-radius:8px!important;font-size:10.8px!important;line-height:1.2!important;
  white-space:normal!important;text-align:center!important;
}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card :is(.ecoa-v127-actions,.ecoa-v101-card__actions) > :is(.ecoa-v127-action--primary,.is-primary):first-child{
  grid-column:1/-1!important;
}

/* Hero: não alterar composição; apenas impedir host alto residual. */
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap [data-ecoa-v1514-caminhos-hero="1"]{min-height:0!important;height:auto!important;max-height:none!important}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap [data-ecoa-v1514-hero-media="1"]{min-height:0!important;max-height:118px!important;overflow:hidden!important}
body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap [data-ecoa-v1514-hero-media="1"] img{
  width:auto!important;height:auto!important;max-width:220px!important;max-height:110px!important;object-fit:contain!important;transform:none!important;
}

@media(max-width:1199px){
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel,
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track.ecoa-r165-track{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:899px){
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel,
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track.ecoa-r165-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:619px){
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-path-group.ecoa-r165-path-group{width:calc(100% - 24px)!important;margin-bottom:18px!important}
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-v101-carousel.ecoa-v101-carousel,
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-track.ecoa-r165-track{grid-template-columns:1fr!important;gap:12px!important}
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card.ecoa-r165-card{height:auto!important;min-height:0!important}
  body:is(.ecoa-v7-route-caminhos,.ecoa-v101-route-caminhos) #wrap .ecoa-r165-card .ecoa-v101-card__meta{grid-template-columns:1fr 1fr!important}
}
