/* Grid base — CENTRALIZADO dentro do Elementor */
.atvt-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); /* mobile: 2 cards lado a lado */
  gap: 18px;
  max-width: 1180px;              /* centraliza e evita colar nas bordas do site */
  margin: 0 auto;                 /* centralizado */
  padding: 0 12px;                /* respiro nas laterais */
  box-sizing: border-box;
}

/* Desktop: 4 por linha */
@media (min-width: 1024px){
  .atvt-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
  }
}

/* Card (mantém o layout, apenas menor) */
.atvt-card{
  position: relative;             /* garante o ribbon corretamente */
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 6px 18px rgba(0,0,0,.07);
  display:flex;
  flex-direction:column;
}

/* Imagem mais “baixa” para reduzir altura do card */
.atvt-card-img{
  width:100%;
  padding-top:50%;                /* antes 56% */
  background-size:cover;
  background-position:center;
}

/* Corpo do card um pouco mais compacto */
.atvt-card-body{
  background:#ff5e00;
  color:#fff;
  padding:14px;                   /* antes 16/24 */
  display:flex;
  flex-direction:column;
  gap:6px;                        /* antes 8 */
  flex:1;
}

/* Ribbon (sem mudanças visuais, apenas ajustado ao novo tamanho) */
.atvt-ribbon{
  position:absolute;
  top:0; left:0;
  margin:12px;
  background:#E94E1B;
  color:#fff;
  padding:6px 12px;
  border-radius:6px;
  font-weight:700;
  font-size:12px;
  z-index:2;
}

/* Textos (menores) */
.atvt-date{
  display:flex; align-items:center; gap:8px;
  font-weight:600; font-size:12.5px;
}

.atvt-title{
  font-size:18px;                 /* antes 20/28 */
  line-height:1.2;
  margin:4px 0 6px 0;
  font-weight:700;
}

.atvt-price-line{
  display:flex; align-items:baseline; gap:8px; flex-wrap:wrap;
}

.atvt-price{
  font-size:18px;                 /* antes 20/28 */
  font-weight:800;
  background:#fff; color:#111;
  padding:3px 8px;
  border-radius:8px;
}

.atvt-pix{ font-size:12.5px; opacity:.95; }

/* Parcelas */
.atvt-installments{
  font-size:13px;                 /* antes 14/18 */
  background:rgba(255,255,255,.1);
  padding:6px 8px;
  border-radius:8px;
}
.atvt-installments span{ font-size:12px; opacity:.95; margin-left:4px; }

/* Botões (menores) */
.atvt-actions{ display:flex; gap:8px; margin-top:auto; }
.atvt-btn{
  display:inline-flex; justify-content:center; align-items:center;
  padding:9px 12px;               /* menor */
  border-radius:10px;
  text-decoration:none;
  font-weight:700; font-size:13px;
  transition:transform .15s, opacity .15s;
}
.atvt-btn:hover{ transform:translateY(-2px); opacity:.95; }
.atvt-btn-primary{ background:#111; color:#fff; }
.atvt-btn-light{ background:#fff; color:#111; }

/* Frota (mantém estilo, levemente mais compacto) */
.atvt-card.frota .atvt-card-body{
  background:#ffffff; color:#111; border-top:3px solid #ff5e00;
}
.atvt-card.frota .atvt-title{ font-size:17px; margin:0; }
.atvt-badges{ display:flex; gap:6px; flex-wrap:wrap; margin:4px 0 2px; }
.atvt-badge{
  background:#ff5e00; color:#fff; border-radius:999px;
  padding:4px 8px; font-size:11px; font-weight:700;
}
.atvt-comodidades{
  font-size:13px; color:#333; background:#fafafa;
  border:1px solid #eee; border-radius:8px; padding:6px 8px;
}
