body {
  font-family: "Lato", sans-serif;
  color: #733287;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Playfair Display", serif;
}

.whatsapp-float {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 30px;
  right: 30px;
  background-color: #25d366;
  color: #fff;
  border-radius: 50px;
  text-align: center;
  font-size: 30px;
  box-shadow: 2px 2px 3px #999;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
  }
}

.section-divider {
  height: 4px;
  background: linear-gradient(
    to right,
    #d5c3a9,
    #733287,
    #bd1b5f,
    #df682d
  );
  width: 100%;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
#depoimentos-list {
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.depo-card {
  scroll-snap-align: center;
}
@media (max-width: 767px) {
  .depo-card {
    min-width: 85%;
  }
}

@media (max-width: 767px) {
  /* Center most text and inline content on mobile for better readability */
  body,
  header,
  nav,
  footer,
  section,
  #essencia,
  #datas,
  #investimento,
  #depoimentos,
  #bio,
  #essencia-invertida,
  .container,
  .container * {
    text-align: center !important;
  }

  .md\:items-end,
  .md\:items-start,
  .md\:items-center,
  .md\:justify-start,
  .md\:justify-end {
    align-items: center !important;
    justify-content: center !important;
  }

  /* Ensure image blocks and inline-block photos are centered visually */
  .essencia-photo,
  img,
  .essencia-photo img {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
}

.essencia-title {
  font-size: 2.25rem;
  line-height: 1.05;
}
@media (min-width: 768px) {
  .essencia-title {
    font-size: 3rem;
  }
}

.essencia-photo {
  width: 20rem;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 36px 70px rgba(0, 0, 0, 0.22);
  display: inline-block;
}
.essencia-photo img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 1024px) {
  .essencia-photo {
    width: 32rem;
  }

  #essencia .container {
    position: relative;
  }
  #essencia .essencia-photo {
    position: absolute;
    right: 4rem;
    top: 50%;
    transform: translateY(-50%) rotate(6deg);
    transform-origin: center center;
  }
}
@media (max-width: 767px) {
  .essencia-photo {
    width: 90%;
  }
}

.container,
.container.mx-auto,
.container.px-6 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}
@media (min-width: 640px) {
  .container,
  .container.mx-auto,
  .container.px-6 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
}
@media (min-width: 1024px) {
  .container,
  .container.mx-auto,
  .container.px-6 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
}

/* Bullet point utility for itinerary lists */
ul.bullet-point {
  list-style: disc;
  margin-top: 0.5rem;
  padding-left: 1.25rem;
}
ul.bullet-point li {
  margin-bottom: 0.25rem;
}
