/**
 * AC | Imagem + CTA — banner de foto com CTA sobreposto (DS 3599:27628).
 * Card: radius 16, Elevation/xs, altura fixa (default 240), bg cover.
 * CTA ancorado no canto inferior esquerdo (inset 10px).
 */
.ac-image-cta {
  position: relative;
}

.ac-image-cta--pt-0  { padding-top: 0; }
.ac-image-cta--pt-24 { padding-top: 24px; }
.ac-image-cta--pt-32 { padding-top: 32px; }
.ac-image-cta--pt-40 { padding-top: 40px; }
.ac-image-cta--pt-48 { padding-top: 48px; }
.ac-image-cta--pt-56 { padding-top: 56px; }
.ac-image-cta--pt-80 { padding-top: 80px; }
.ac-image-cta--pb-0  { padding-bottom: 0; }
.ac-image-cta--pb-24 { padding-bottom: 24px; }
.ac-image-cta--pb-32 { padding-bottom: 32px; }
.ac-image-cta--pb-40 { padding-bottom: 40px; }
.ac-image-cta--pb-48 { padding-bottom: 48px; }
.ac-image-cta--pb-56 { padding-bottom: 56px; }
.ac-image-cta--pb-80 { padding-bottom: 80px; }

.ac-image-cta__inner {
  max-width: var(--container-max, 1104px);
  margin-inline: auto;
}

.ac-image-cta__card {
  position: relative;
  height: var(--ac-ic-height, 240px);
  border-radius: 16px;
  box-shadow: 0 3px 4px -2px rgba(0, 0, 0, 0.08);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  overflow: hidden;
}
.ac-image-cta__card--placeholder {
  border: 1px dashed #C0C4CC;
  background: #F6F7F9;
}

/* CTA sobreposto: canto inferior esquerdo (DS: inset 10px). */
.ac-image-cta__cta {
  position: absolute;
  left: 10px;
  bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 768px) {
  .ac-image-cta__card { height: max(160px, calc(var(--ac-ic-height, 240px) * 0.75)); }
}
