/* CUSTOMIZE THE CAROUSEL 
-------------------------------------------------- */

.carousel {
  margin-bottom: 4rem;
}

.carousel-caption {
  position: absolute;
  bottom: 3rem;
}

/* altura responsiva do carousel */
.carousel-item {
  height: auto;
}

/* imagem dentro de <picture> — mantém proporção sem espaço em branco */
.carousel-item picture {
  display: block;
  line-height: 0;
}

.carousel-item picture img,
.carousel-item > img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* em monitores grandes (sem imagem wide) limita altura para não ficar gigante */
@media (min-width: 992px) and (max-width: 1399px) {
  .carousel-item picture img,
  .carousel-item > img {
    max-height: 650px;
  }
}

.caption-box {
  display: inline-block;
  background: rgba(0, 0, 0, 0.6);
  padding: 1rem 1.5rem;
  border-radius: 0.5rem;
  max-width: 90vw;
  text-align: left;
}

/* MARKETING CONTENT
-------------------------------------------------- */

.marketing .col-lg-4 {
  margin-bottom: 1.5rem;
  text-align: center;
}
.marketing h2 {
  font-weight: 400;
}
/* rtl:begin:ignore */
.marketing .col-lg-4 p {
  margin-right: 0.75rem;
  margin-left: 0.75rem;
}
/* rtl:end:ignore */

/* Featurettes
------------------------- */

.featurette-divider {
  margin: 5rem 0;
}

.featurette-heading {
  font-weight: 300;
  line-height: 1;
  /* rtl:remove */
  letter-spacing: -0.05rem;
}

/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 40em) {
  .carousel-caption p {
    margin-bottom: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }

  .featurette-heading {
    font-size: 50px;
  }
}

@media (min-width: 62em) {
  .featurette-heading {
    margin-top: 7rem;
  }
}
