* {
  font-family: 'Lato', sans-serif;
}

.bg-primary-color {
  background-color: #fff;
}

.bg-secondary-color {
  background-color: #ece8ea;
}

.bg-dark-color {
  background-color: #050505;
}

.primary-color {
  color: #050505;
}

.secondary-color {
  color: #7a7a7a;
}

/* #### NAVBAR #### */
#navbar {
  border-bottom: 1px solid #7a7a7a;
}

#navbar a:hover {
  color: #7a7a7a;
}

#navbar a.active {
  border-bottom: 1px solid #050505;
}

.navbar-brand {
  display: flex;
}

.navbar-brand img {
  width: 40px;
}

.navbar-brand span {
  font-weight: 700;
  font-size: 1.5rem;
  margin-left: 0.5rem;
}

#navbar-items .navbar-nav {
  display: flex;
  justify-content: center;
  width: 100%;
}

#navbar-items .nav-item {
  margin: 0 1rem;
}

/* #### SLIDER #### */
#slider {
  margin-top: 8em;
  margin-bottom: 1em;
}

#slider .carousel-caption {
  bottom: 3em;
}

#slider .carousel-caption h5 {
  font-size: 2.5em;
  text-shadow: #000 2px 2px;
}

.btn {
  border-radius: 0;
}

#slider .btn {
  padding: 0.3em 0.8em;
  font-size: 1em;
  margin-top: 1em;
}

.carousel-control-prev i,
.carousel-control-next i {
  color: #111;
  font-size: 3em;
}

.carousel-indicators [data-bs-target] {
  background-color: #222;
  opacity: 0.8;
}

.carousel-indicators .active {
  background-color: #000;
}

/* #### MEDIA QUERIES #### */
@media screen and (min-width: 768px) {
  #slider .carousel-caption {
    bottom: 15em;
  }

  #slider .carousel-caption h5 {
    font-size: 4em;
    text-shadow: #000 2px 3px;
  }

  #slider .btn {
    padding: 0.6em 1.6em;
    font-size: 1.2em;
  }

  .carousel-indicators {
    bottom: 7em;
  }
}

/* #### MINI BANNERS #### */
#mini-banners {
  margin-bottom: 4em;
}

#mini-banners .card {
  padding: 2em 0.3em;
  border-radius: 0;
  margin-bottom: 1em;
}

#mini-banners i {
  font-size: 4em;
}

#mini-banners .card-title {
  margin-bottom: 1.5em;
}

#mini-banners .btn {
  margin-top: 1.5em;
  padding: 0.6em 1.2em;
}

/* #### MEDIA QUERIES #### */
@media screen and (min-width: 768px) {
  #mini-banners {
    margin-top: -6em;
  }
}

/* #### DESTAQUES #### */
#featured-container {
  margin-bottom: 4em;
}

.title {
  font-size: 1.75em;
  margin-bottom: 0.4em;
  position: relative;
}

.title::before {
  width: 75px;
  border-top: 4px solid #7a7a7a;
  content: '';
  position: absolute;
  bottom: 2em;
}

#featured-images {
  margin-top: 2em;
}

#featured-images .col-md-4 {
  position: relative;
  cursor: pointer;
}

#featured-images .col-md-4:hover > .banner-content {
  opacity: 0.8;
}

#featured-images .banner-content {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  opacity: 0.6;
  transition: 0.5s;
}

/* #### MEDIA QUERIES #### */
@media screen and (min-width: 768px) {
  .title {
    font-size: 2.4em;
  }

  .title::before {
    bottom: 1.5em;
  }

  #featured-images .banner-content {
    opacity: 0;
  }
}

/* #### INFO #### */
#info-content {
  margin-bottom: 4em;
  padding: 4em 1em;
}

#info-numbers {
  margin: 1.5em 0;
}

#info-banner {
  display: flex;
  align-items: center;
  margin-bottom: 2.5em;
}

#info-numbers h3 {
  font-size: 3em;
}

/* #### MEDIA QUERIES #### */
@media screen and (min-width: 768px) {
  #info-content {
    padding: 3.5em;
  }
}

/* #### FOOTER #### */

/* FOOTER TOP */
#footer {
  padding: 3em 2em;
}

#footer-top {
  margin-bottom: 2em;
}

#footer-top,
#footer-top i {
  color: #fff;
}

#social-icons {
  text-align: right;
}

#social-icons i {
  margin-right: 1em;
  font-size: 1.5em;
  cursor: pointer;
}

#social-icons i:hover {
  color: #7a7a7a;
}

/* FOOTER DETAILS */
#footer-details {
  margin-bottom: 3em;
}

#news-container,
#contact-container,
#links-container {
  padding: 0;
  border: 0;
  margin-bottom: 2em;
}

#footer-details h4 {
  color: #fff;
  margin-bottom: 1.5em;
}

#news-container input {
  border-radius: 0;
  border: none;
}

#links-container li {
  margin: 0.5em;
}

#links-container a {
  text-decoration: none;
}

#links-container a:hover {
  color: #fff;
}

/* FOOTER BOTTOM */
#footer-bottom {
  border-top: 1px solid #7a7a7a;
  padding-top: 2em;
}

#footer-bottom i {
  color: #e61e10;
  margin-left: 0.3em;
}

/* #### MEDIA QUERIES #### */
@media screen and (min-width: 768px) {
  #news-container {
    padding-right: 2em;
  }

  #links-container {
    padding-left: 2em;
  }

  #contact-container {
    padding: 0 2em;
    border-left: 1px solid #7a7a7a;
    border-right: 1px solid #7a7a7a;
  }
}
