img {
  image-rendering: -webkit-optimize-contrast;
}

/* Custom fonts adicionadas: Europa Grotesk SH Bold e ITC Garamond Std */
@font-face {
  font-family: 'Europa Grotesk SH';
  src: url('../fonts/europa-grotesk-sh-bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'ITC Garamond Std';
  src: url('../fonts/ITC Garamond Std Book.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'ITC Garamond Std';
  src: url('../fonts/ITC Garamond Std Book Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

.font-europa-bold { font-family: 'Europa Grotesk SH', sans-serif; font-weight:700; }
.font-europa { font-family: 'Europa Grotesk SH', 'Switzer', ui-sans-serif, system-ui, sans-serif; }
.font-garamond { font-family: 'ITC Garamond Std', serif; }

:root {
  --swiper-preloader-color: #C00E0E !important;
  --swiper-theme-color: #C00E0E !important;
}

.img-fluid {
  max-width: 100%;
}

.no-wrap {
  white-space: nowrap;
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

nav.navbar {
  background: #99bbff;
}

.required {
  color: red;
}

#contact-form .form-group {
  margin-bottom: 20px;
}

.btn-primary {
  background-color: #C00E0E;
  color: #FFFFFF;
}

.navbar-toggler {
  border: none;
}
.navbar-toggler i {
  color: #C00E0E;
  font-size: 25px;
}

.page-title {
  color: #333;
  font-size: 2.75rem;
  font-weight: 500;
  text-align: center;
}

.title-primary {
  color: #C00E0E;
  font-size: 40px;
}

footer {
  background-color: #99bbff;
}
footer .img-footer {
  display: flex;
  height: 100%;
  align-items: center;
}
footer .redes-sociais {
  display: flex;
}
footer .redes-sociais i {
  font-size: 30px;
  margin-right: 10px;
}
footer .endereco a,
footer .endereco address {
  margin-left: 10px;
  margin-bottom: 0;
}
footer ul.menu {
  padding-left: 0;
}

.search .card-body {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

@media (max-width: 575.98px) {
  .navbar-brand .logo {
    max-width: 200px;
  }
}
#slide_home .swiper-lazy-loaded {
  width: 100%;
}

/* Ajustes responsivos para o slider (mobile) - fallback sem rebuild do SCSS */
@media (max-width: 1023.98px) {
  #slide_home .swiper-slide {
    aspect-ratio: auto !important;
    height: auto !important;
    max-height: none !important;
    /* Forçar altura mínima solicitada pelo usuário para evitar corte */
    min-height: 610px !important;
    max-height: 610px !important;
  }

  #slide_home .swiper-button-next,
  #slide_home .swiper-button-prev {
    display: none !important;
  }

  #slide_home .swiper-pagination {
    bottom: 8px;
  }

  /* Ajuste do container interno para reduzir padding em mobile */
  #slide_home .max-w-\[1320px\] {
    padding-left: 16px;
    padding-right: 16px;
  }
}

.sobre-nos p {
    text-align: justify !important;
}
