
/* V81 - Conteúdo interno mais largo e banners laterais alinhados */
@media (min-width: 1024px){
  .container{
    max-width:1240px!important;
  }

  /*
    Páginas de detalhe com conteúdo + publicidade lateral.
    A coluna da direita fica encostada na lateral interna do site,
    e o conteúdo principal ganha mais largura.
  */
  .main-layout{
    display:grid!important;
    grid-template-columns:minmax(0, 1fr) 300px!important;
    gap:34px!important;
    align-items:start!important;
  }

  .main-layout > .content-page,
  .main-layout > article{
    width:100%!important;
    max-width:none!important;
  }

  .main-layout > aside,
  .main-layout > .sidebar,
  .main-layout > .side-ads,
  .main-layout > .standard-sidebar-ads,
  .main-layout > .ad-sidebar,
  .main-layout > div:last-child:not(.content-page):not(article){
    width:300px!important;
    max-width:300px!important;
    justify-self:end!important;
    align-self:start!important;
  }

  .main-layout img{
    max-width:100%;
  }

  .main-layout aside img,
  .main-layout .sidebar img,
  .main-layout .side-ads img,
  .main-layout .standard-sidebar-ads img,
  .main-layout .ad-sidebar img,
  .main-layout > div:last-child:not(.content-page):not(article) img{
    width:100%!important;
    height:auto!important;
    display:block!important;
  }

  .main-layout .sidebox,
  .main-layout .ad-box,
  .main-layout .banner,
  .main-layout .ad-card{
    width:100%!important;
    margin-left:auto!important;
    margin-right:0!important;
  }
}

/* Telas muito grandes: aproxima ainda mais da largura visual do site */
@media (min-width: 1440px){
  .container{
    max-width:1320px!important;
  }

  .main-layout{
    grid-template-columns:minmax(0, 1fr) 320px!important;
    gap:38px!important;
  }

  .main-layout > aside,
  .main-layout > .sidebar,
  .main-layout > .side-ads,
  .main-layout > .standard-sidebar-ads,
  .main-layout > .ad-sidebar,
  .main-layout > div:last-child:not(.content-page):not(article){
    width:320px!important;
    max-width:320px!important;
  }
}

/* Mobile/tablet: mantém uma coluna para não quebrar */
@media (max-width: 1023px){
  .main-layout{
    display:block!important;
  }

  .main-layout > aside,
  .main-layout > .sidebar,
  .main-layout > .side-ads,
  .main-layout > .standard-sidebar-ads,
  .main-layout > .ad-sidebar,
  .main-layout > div:last-child:not(.content-page):not(article){
    width:100%!important;
    max-width:none!important;
    margin-top:20px!important;
  }
}


@media (min-width:1024px){
  .ponto-detail-layout{
    grid-template-columns:minmax(0, 760px) 320px!important;
    justify-content:space-between!important;
  }

  .ponto-detail-layout .ponto-detail-wrap{
    max-width:760px!important;
  }
}

@media (min-width:1440px){
  .ponto-detail-layout{
    grid-template-columns:minmax(0, 820px) 340px!important;
  }

  .ponto-detail-layout .ponto-detail-wrap{
    max-width:820px!important;
  }
}


/* V82 - Banner lateral limpo: sem tabela/caixa visual no site */
.banner-lateral-clean,
.standard-ad-sidebar.banner-lateral-clean,
.main-layout .banner-lateral-clean{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}

.banner-lateral-clean .side-banner-slot,
.banner-lateral-clean [data-banner-rotator],
.banner-lateral-clean .banner-rotator-item{
  padding:0!important;
  margin:0 0 2px 0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  display:block;
}

.banner-lateral-clean .banner-rotator-item{
  display:none!important;
}

.banner-lateral-clean .banner-rotator-item.active{
  display:block!important;
}

.banner-lateral-clean img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  object-fit:contain!important;
}

/* Esconde qualquer título, legenda ou estrutura extra da publicidade lateral */
.banner-lateral-clean h1,
.banner-lateral-clean h2,
.banner-lateral-clean h3,
.banner-lateral-clean h4,
.banner-lateral-clean p,
.banner-lateral-clean .title,
.banner-lateral-clean .caption,
.banner-lateral-clean .ad-title,
.banner-lateral-clean .badge{
  display:none!important;
}


/* V83 - Imagem destaque clicável sem travar carregamento */
.detail-main-image-link{
  display:block!important;
  line-height:0!important;
  cursor:zoom-in!important;
  text-decoration:none!important;
}
.detail-main-image-link img{
  display:block!important;
}
body.lightbox-open .page-transition-overlay,
.gallery-lightbox.show ~ .page-transition-overlay{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}


/* V84 - Espaçamento exato entre banners laterais */
.banner-lateral-clean,
.standard-ad-sidebar.banner-lateral-clean,
.main-layout .banner-lateral-clean{
  gap:2px!important;
}

.banner-lateral-clean .side-banner-slot,
.banner-lateral-clean [data-banner-rotator],
.banner-lateral-clean .banner-rotator-item,
.standard-ad-sidebar .side-banner-slot{
  margin-bottom:2px!important;
}

.banner-lateral-clean .side-banner-slot:last-child,
.banner-lateral-clean [data-banner-rotator]:last-child,
.standard-ad-sidebar .side-banner-slot:last-child{
  margin-bottom:0!important;
}
