/* Estrutura */
body {
    background-color: #ffffff;
    /* Bege claro, tom natural */
}

header {
  /* Verde gradiente */
    background: linear-gradient(90deg, #2e7d32, #66bb6a);
    color: white;
    padding-bottom: 15px;
}

a:hover{
  text-decoration: none!important;
}

.btn-custom {
    background-color: #0288D1;
    /* Azul água */
    color: white;
}

.btn-custom:hover {
    background-color: #0277BD;
}

.section-bg {

    background: linear-gradient(35deg, #d0fbd2, #ddd, #ffffff);
}

.section-bg-contato{
    background: linear-gradient(90deg, #2e7d32, #5a975c);
}

.card-img-top {
    height: 200px;
    object-fit: cover;
}

.img-fluid {
    max-height: 200px;
    object-fit: cover;
}

/* Menu */
.menu {
    background-color: #FFFFFF;
    /* bg-success com opacidade */
}

.menu .nav-link,
.menu .navbar-brand {
    /* color: #fff !important; */
    color: #2e7d32 !important; /* cor viva, sem transparência */
    font-weight: bolder;
    transition: ease-in-out .2s;
}

.menu .nav-link:hover {
    background-color: #2E7D32;
    color: #fff !important;
    border-radius: 6px;
}

.menu .navbar-brand img{
    max-width: 130px;
}

.menu .navbar-toggler-icon,
.menu .navbar-toggler-icon::before,
.menu .navbar-toggler-icon::after {
  background-color: #2e7d32;
}

.menu .navbar-toggler-icon {
  background-image: none!important;
  background-color: #2e7d32;
  height: 3px;
  width: 25px;
  margin: 10px 0;
  position: relative;
  transition: all 0.35s ease-out;
  transform-origin: center;
}

.menu .navbar-toggler-icon::before {
  display: block;
  background-color: #2e7d32;
  height: 3px;
  content: "";
  position: relative;
  top: -7px;
  transition: all 0.15s ease-out;
  transform-origin: center;
}

.menu .navbar-toggler-icon::after {
  display: block;
  background-color: #2e7d32;
  height: 3px;
  content: "";
  position: relative;
  top: 4px;
  transition: all 0.35s ease-out;
  transform-origin: center;
}

.menu .navbar-dark .navbar-toggler-icon,
.menu .navbar-dark .navbar-toggler-icon::before,
.menu .navbar-dark .navbar-toggler-icon::after {
  background-color: #2e7d32;
}

.menu .navbar-toggler:not(.collapsed) .icone-collapse {
  transform: rotate(45deg);
}

.menu .navbar-toggler:not(.collapsed) .icone-collapse::before {
  opacity: 0;
}

.menu .navbar-toggler:not(.collapsed) .icone-collapse::after {
  transform: rotate(-90deg) translateX(7px);
}

/* Carousel */
header .carousel-caption{
    width: 100%;
    left: 0;
    bottom: 0;
    padding-top: 0;
    padding-bottom: 70px;
}

.carousel .carousel-caption h1{
  font-size: 64px;
}

.carousel .carousel-caption h1
, .carousel .carousel-caption h2{
    text-shadow: black 0.1em 0.1em 0.2em
}

/* Pacotes */ 
#pacotes .card
, #pacotes .card-img{
	border-radius: 6px;
}

#pacotes .card .card-img-overlay{
	background-color: #00000070;
  border-radius: 6px;
}

#pacotes .card .card-img-overlay:hover{
	background-color: #00000000;
  transition: ease-in-out .2s;
  box-shadow: #aeaeae 3px 5px 10px 2px;
}

#pacotes .card .card-img-overlay:hover .card-title{
  transition: ease-in-out .2s;
	padding-bottom: 5px;
  text-shadow: black 0.1em 0.1em 0.2em;
  box-shadow: none;
}

#pacotes .card .card-img-overlay:not(:hover){
	background-color: #00000070;
  transition: ease-in-out .2s;
}

#pacotes .card .card-img-overlay:not(:hover) .card-title{
  padding-bottom: 0px;
  text-shadow: none;
  transition: ease-in-out .2s;
}

/* Depoimentos */
#depoimentos .card{
    border-radius: 8px;
}

#depoimentos .card-body{
    box-shadow: #ccc 4px 4px 5px 2px;
    background-color: #f8f8f8;
    border-radius: 8px;
}

/* Contatos */
#contato .contato-icon{
  display: flex;
  justify-content: center;
  align-items: center;
}

#contato .contato-icon a{
  display: flex;
  justify-content: center;
  align-items: center;
}

#contato .contato-icon a img{
  max-width: 45px;
  margin-right: 7px;
}

#contato .contato-icon a .contato-text{
  color: #fff;
  margin-bottom: 0;
}

#contato .contato-icon a:hover .contato-text{
  margin-bottom: 2px;
  transition: ease-in-out .2s;
  text-shadow: black 0.1em 0.1em 0.2em;
}

#contato .contato-icon a:not(:hover) .contato-text{
  margin-bottom: 0;
  text-shadow: none;
  transition: ease-in-out .2s;
}

#contato .contato-icon #contato-whatsapp{
  cursor: pointer;
}

/* CSS Especiais */

.typing-effect {
    /* 24ch - Total de caracteres do texto */
    width: 24ch;
    /* steps(24) - Mesmo total de caracteres do texto */
    animation: typing 2s steps(24); 
    white-space: nowrap;
    overflow: hidden;
    border-right: 0;
    margin: 0 auto;
}

@keyframes typing {
    from  {
        width: 0;
    }
}