/* Tema visual: somente complementos necessários ao Design System do Bootstrap */
:root {
  --brand-blue: #163b67;
  --brand-blue-dark: #102945;
  --brand-gold: #d4af37;
  --brand-gold-dark: #b79322;
  --brand-gray: #f3f4f6;
  --brand-gray-soft: #fbfcfe;
  --bs-primary: var(--brand-blue);
  --bs-primary-rgb: 22, 59, 103;
  --bs-warning: var(--brand-gold);
  --bs-warning-rgb: 212, 175, 55;
  --bs-body-color: #273142;
  --bs-body-bg: #fff;
}

body {
  background-color: var(--brand-gray);
}
/* bg mais escuro */
/* .bg-brand {
  background-color: var(--brand-blue) !important;
} */
/* bg mais claro */
.bg-brand {
  background-color: #214f7a !important;
}
.bg-soft {
  background-color: var(--brand-gray);
}
.bg-soft-light {
  background-color: var(--brand-gray-soft);
}
.text-brand {
  color: var(--brand-blue) !important;
}
.text-gold {
  color: var(--brand-gold) !important;
}
.border-gold {
  border-color: var(--brand-gold) !important;
}
.letter-spacing {
  letter-spacing: 0.12em;
}

.btn-gold {
  --bs-btn-color: var(--brand-blue-dark);
  --bs-btn-bg: var(--brand-gold);
  --bs-btn-border-color: var(--brand-gold);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--brand-gold-dark);
  --bs-btn-hover-border-color: var(--brand-gold-dark);
  --bs-btn-active-bg: var(--brand-gold-dark);
  --bs-btn-active-border-color: var(--brand-gold-dark);
  font-weight: 600;
}

.text-secondary {
  color: #273142 !important;
}

.sidebar {
  height: 100vh;
  overflow-y: auto;
}
.sidebar-link {
  color: #fff;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.sidebar-link:hover,
.sidebar-link:focus,
.sidebar-link.active {
  background-color: rgba(212, 175, 55, 0.15);
  color: #fff;
}
.sidebar-link.active {
  border-left: 0.25rem solid var(--brand-gold);
}

/* .hero-slide {
  min-height: min(76vh, 720px);
  object-fit: cover;
  filter: brightness(0.75);
} */

.hero-slide {
  height: 100vh;
  min-height: 520px;
  max-height: 760px;
  object-fit: cover;
  object-position: center;
  filter: brightness(0.75);
}
.hero-caption {
  max-width: 46rem;
}
.gold-rule {
  width: 4.25rem;
  height: 0.2rem;
  background-color: var(--brand-gold);
}
/* .page-hero {
  background:
    linear-gradient(100deg, rgba(16, 41, 69, 0.97), rgba(22, 59, 103, 0.84)),
    url("https://images.unsplash.com/photo-1507692049790-de58290a4334?auto=format&fit=crop&w=1600&q=80")
      center/cover;
} 
.page-hero {
  background:
    linear-gradient(100deg, rgba(16, 41, 69, 0.97), rgba(22, 59, 103, 0.84)),
    url("/assets/img/A-IGREJA-VERDADEIRAMENTE-APOSTOLICA.jpg") center/cover;
}*/
/* .page-hero {
  background:
    linear-gradient(100deg, rgba(16, 41, 69, 0.97), rgba(22, 59, 103, 0.84)),
    url("/assets/img/culto-igreja-de-cristo.png") center/cover;
} */
.page-hero {
  background:
    linear-gradient(100deg, rgba(32, 78, 124, 0.82), rgba(73, 124, 174, 0.5)),
    url("/assets/img/culto-igreja-de-cristo.png") center/cover;
}
.event-date {
  /* min-width: 4.8rem; */
  min-width: 5rem;
  strong {
    font-size: 18px !important;
  }
}

.display-4 {
  font-size: calc(1.475rem + 2vw);
}
.gallery-image {
  height: 16rem;
  object-fit: cover;
}
/* .object-cover {
  object-fit: cover;
} */
.hover-lift {
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.hover-lift:hover {
  transform: translateY(-0.2rem);
  box-shadow: var(--bs-box-shadow-lg) !important;
}
.social-link {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;
  font-size: 1.9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 26px -6px rgba(37, 211, 102, 0.6);
  transition: transform 0.2s;
  animation: pulse-whats 2.4s ease infinite;
  z-index: 1040;
  text-decoration: none;
}

.whatsapp-float:hover {
  transform: scale(1.08);
}

.mission-card {
  position: relative;
  overflow: hidden;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.mission-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 0.35rem;
  background: var(--brand-gold);
}

.mission-card:hover {
  transform: translateY(-0.35rem);
  box-shadow: 0 1rem 2.5rem rgba(22, 59, 103, 0.12) !important;
}

.mission-icon {
  width: 4rem;
  height: 4rem;
  color: var(--brand);
  background: rgba(197, 157, 95, 0.16);
}

.mission-card-feature {
  background:
    linear-gradient(135deg, rgba(22, 59, 103, 0.04), rgba(197, 157, 95, 0.1)),
    #fff;
}

@keyframes pulse-whats {
  0% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
  }

  70% {
    box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
  }
}
.form-control:focus,
.form-select:focus {
  border-color: var(--brand-gold);
  box-shadow: 0 0 0 0.25rem rgba(212, 175, 55, 0.2);
}
@media (min-width: 992px) {
  .content-rounded {
    border-top-left-radius: 1.5rem;
  }
}

/* Galeria por eventos e lightbox */
.gallery-trigger {
  background: var(--brand-blue-dark);
  cursor: zoom-in;
}
.gallery-trigger img {
  transition:
    transform 0.45s ease,
    opacity 0.3s ease;
}
.gallery-trigger:hover img,
.gallery-trigger:focus-visible img {
  transform: scale(1.045);
  opacity: 0.88;
}
.gallery-trigger:focus-visible {
  outline: 0.2rem solid var(--brand-gold);
  outline-offset: 0.18rem;
}
.gallery-feature img {
  height: 32rem;
  object-fit: cover;
}
.gallery-thumb {
  min-height: 15.45rem;
  object-fit: cover;
}
.gallery-wide-thumb {
  min-height: 15.45rem;
  object-fit: cover;
}
.gallery-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(16, 41, 69, 0.82), transparent 46%);
}
.gallery-zoom {
  align-items: center;
  background-color: rgba(16, 41, 69, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50rem;
  bottom: 1rem;
  color: #fff;
  display: inline-flex;
  height: 2.6rem;
  justify-content: center;
  opacity: 0;
  position: absolute;
  right: 1rem;
  transition: opacity 0.25s ease;
  width: 2.6rem;
}
.gallery-trigger:hover .gallery-zoom,
.gallery-trigger:focus-visible .gallery-zoom {
  opacity: 1;
}
.album-photo img {
  height: 17rem;
  object-fit: cover;
}
.gallery-modal .modal-content {
  min-height: min(86vh, 54rem);
}
.gallery-lightbox-image {
  max-height: calc(86vh - 10rem);
  max-width: 100%;
  object-fit: contain;
}
.gallery-nav {
  background-color: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
  color: #fff;
  font-size: 1.35rem;
  height: 3.25rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3.25rem;
  z-index: 2;
}
.gallery-nav:hover,
.gallery-nav:focus {
  background-color: var(--brand-gold);
  color: var(--brand-blue-dark);
}
.gallery-nav-prev {
  left: 1rem;
}
.gallery-nav-next {
  right: 1rem;
}

.section-kicker {
  color: #c39a3e;
  font-weight: 700;
  font-size: 0.8rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  display: inline-block;
}

.carousel-indicators {
  margin-bottom: 5rem;
}

@media (max-width: 991.98px) {
  .gallery-feature img {
    height: 23rem;
  }
  .gallery-thumb,
  .gallery-wide-thumb {
    min-height: 12rem;
    height: 12rem !important;
  }
}
@media (max-width: 575.98px) {
  .gallery-feature img {
    height: 19rem;
  }
  .album-photo img {
    height: 14rem;
  }
  .gallery-nav {
    height: 2.75rem;
    width: 2.75rem;
  }
  .gallery-nav-prev {
    left: 0.5rem;
  }
  .gallery-nav-next {
    right: 0.5rem;
  }

  .carousel-indicators {
    margin-bottom: 0;
  }
}

@media (max-width: 767.98px) {
  .hero-slide {
    height: calc(100vh - 88px);
    min-height: 560px;
    max-height: none;
    object-fit: cover;
    object-position: center center;
  }

  .hero-slide-mobile-right {
    object-position: 75% center;
  }
}
