.xl-text {
  font-size: 75px;
}

.btn-outline-secondary {
  color: var(--bs-secondary);
}

.btn-outline-secondary:hover {
  color: white;
}

body {
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}

main {
  flex: 1;
}

.carousel-caption {
  border: 10px solid hsla(0, 0%, 100%, 0.5);
  background: white;
  background-clip: padding-box;
}

.navbar {
  transition: all 0.5s ease-in-out;
}

.navbar-sticky {
  background: white;
  opacity: 0.9;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.to-top-btn {
  position: fixed;
  z-index: 20;
  bottom: 20px;
  right: 20px;
  opacity: 0;
  width: 52px;
  height: 52px;
  border: none;
  border-radius: 50%;
  outline: none;
  background-color: #44434a;
  cursor: pointer;
  transition: all 0.5s ease-in-out;
}

.to-top-btn:hover {
  background-color: #1d1d21;
}

.to-top-btn img {
  margin-bottom: 0.25rem;
  width: 18px;
}

.show {
  opacity: 1;
}

li .active {
  background-color: #f6f6fc;
  border-radius: 20%;
}

.zoo-cards .card {
  background-color: #f6f6fc;
  min-height: 405px;
  box-shadow: 0 5px 4px -4px #c6c6ca;
  box-shadow: 3px 3px 6px -3px #c6c6ca;
}

.animal-cards .card {
  background-color: #f6f6fc;
  box-shadow: 0 5px 4px -4px #c6c6ca;
  box-shadow: 3px 3px 6px -3px #c6c6ca;
}

.footer {
  background-color: #f6f6fc;
}

[data-bs-theme=dark] .navbar-sticky {
  background: #212529;
  opacity: 0.9;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
[data-bs-theme=dark] li .active {
  background-color: #181c1f;
  border-radius: 20%;
}
[data-bs-theme=dark] .zoo-cards .card {
  background-color: #181c1f;
}
[data-bs-theme=dark] .animal-cards .card {
  background-color: #181c1f;
}
[data-bs-theme=dark] .footer {
  background-color: #181c1f;
}

@media (max-width: 992px) {
  .xl-text {
    font-size: 50px;
  }
  .navbar .btn-outline-secondary {
    margin-top: 20px;
  }
  .header {
    margin-top: 0 !important;
    text-align: center;
  }
  .header .decoration-star {
    left: -100px;
    width: 250px;
  }
  .header .decoration-star-2 {
    right: -100px;
    width: 250px;
  }
  .header .image-container {
    margin-top: 30px;
  }
  .services .col-md-4 {
    border-bottom: 1px #ccc solid;
    margin: 10px 0;
  }
  .details-2 {
    margin-top: 15px !important;
  }
  .details-2 .decoration-star {
    top: 300px;
  }
  .aside {
    padding-top: 10px;
    border-top: 1px solid #f6f6fc;
  }
}
@media (max-width: 767px) {
  .zoo-cards .col-md-4 {
    margin-bottom: 20px;
  }
  .animal-cards .col-md-4 {
    margin-bottom: 20px;
  }
}
@media (max-width: 576px) {
  .zoo-cards .col-md-4 {
    margin-bottom: 20px;
  }
  .animal-cards .col-md-4 {
    margin-bottom: 20px;
  }
}
