.elementor-61725 .elementor-element.elementor-element-f29195f{--display:flex;--min-height:100px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--flex-wrap:wrap;--background-transition:0.3s;}.elementor-61725 .elementor-element.elementor-element-f29195f.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-61725 .elementor-element.elementor-element-f45fcaf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--background-transition:0.3s;}.elementor-61725 .elementor-element.elementor-element-f45fcaf.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-61725 .elementor-element.elementor-element-eeaed63{--display:flex;--background-transition:0.3s;}.elementor-61725 .elementor-element.elementor-element-12d44eb{--spacer-size:100px;}@media(min-width:768px){.elementor-61725 .elementor-element.elementor-element-f45fcaf{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-f849703 */.catalog-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-auto-rows: 220px;
  column-gap: 6px;
  row-gap: 8px;
}

/* Todos os catálogos */
.catalog {
  background: #fff;
  height: 100%;
  overflow: hidden;
}

/* Catálogo em destaque (2 colunas x 2 linhas) */
.catalog.featured {
  grid-column: span 2;
  grid-row: span 2;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
  overflow: hidden;
  aspect-ratio: 2 / 2.8; /* proporção da capa */
}

/* Link no destaque */
.catalog-link {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* Imagem da capa do destaque */
.catalog-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

/* Zoom suave ao passar o rato */
.catalog-link:hover img {
  transform: scale(1.05);
}

/* Responsivo: Tablet */
@media (max-width: 1024px) {
  .catalog-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: auto;
    column-gap: 8px;
    row-gap: 8px;
  }

  .catalog.featured {
    grid-column: span 3;
    grid-row: span 1;
    aspect-ratio: auto;
    height: auto;
  }

  .catalog.featured > * {
    height: auto;
  }
}

/* Responsivo: Telemóvel */
@media (max-width: 600px) {
  .catalog-grid {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .catalog.featured {
    grid-column: span 1;
  }
}/* End custom CSS */