@import url("vendor/owl-carousel/owl.carousel.css");
@import url("vendor/owl-carousel/owl.theme.css");
@import url("vendor/owl-carousel/carousel.css");
@import url("vendor/light-box/ekko-lightbox.css");

html {
  scroll-behavior: smooth;
}

body.ritual-site {
  margin: 0;
  min-height: 100vh;
}

/* The original header swaps the large logo for the compact logo after scroll. */
.ritual-site #top-nav.header-scrolled .logo-image-2 {
  display: none !important;
}

.ritual-site #top-nav.header-scrolled {
  padding-bottom: 0;
  background-color: #f2f2f2;
  color: #666;
  box-shadow: 0 0 5px rgba(0, 0, 0, .3);
}

@media (max-width: 991px) {
  .ritual-site #top-nav.header-scrolled .logo-image-6 {
    display: inherit !important;
    float: left;
    padding: 10px 15px;
  }
}

@media (min-width: 992px) {
  .ritual-site #top-nav.header-scrolled .logo-image-6 {
    display: none !important;
  }

  .ritual-site #top-nav.header-scrolled .menu-right {
    width: 100%;
  }
}

.ritual-site #top-nav.header-scrolled .navbar-nav > li > a {
  color: #666;
}

.ritual-site #top-nav .navbar-nav > li > a.active {
  color: #ee163b !important;
  font-weight: 500;
}

.ritual-site .joomla-alert--show {
  position: relative;
  z-index: 10000;
}

.ritual-site .menu-right {
  display: block;
}

.ritual-site .picture-item[hidden] {
  display: none !important;
}

.ritual-lightbox {
  position: fixed;
  inset: 0;
  z-index: 11000;
  display: grid;
  place-items: center;
  padding: 2rem;
  background: rgba(0, 0, 0, .85);
}

.ritual-lightbox img {
  max-width: min(1100px, 95vw);
  max-height: 90vh;
  object-fit: contain;
}

.ritual-lightbox figure {
  max-width: min(1100px, 95vw);
  margin: 0;
  color: #fff;
  text-align: center;
}

.ritual-lightbox figure img {
  max-width: 100%;
}

.ritual-lightbox figcaption {
  padding-top: 1rem;
  font-size: 1.6rem;
}

.ritual-policy-modal.is-open {
  display: block;
  opacity: 1;
  overflow-x: hidden;
  overflow-y: auto;
  background: rgba(0, 0, 0, .55);
}

/* Stable responsive grid without the legacy Shuffle dependency. */
.ritual-site #grid {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.ritual-site #grid .picture-item {
  float: none;
  margin-bottom: 0;
}

.ritual-site #grid .gallery_image {
  width: 100%;
}

.ritual-policy-modal .modal-dialog {
  margin-top: 5vh;
  margin-bottom: 5vh;
}

.ritual-policy-modal .modal-body {
  max-height: 75vh;
  overflow-y: auto;
}

body.ritual-modal-open {
  overflow: hidden;
}

.ritual-lightbox button {
  position: absolute;
  top: 1rem;
  right: 1rem;
  border: 0;
  background: transparent;
  color: #fff;
  font-size: 3rem;
  line-height: 1;
}

.ritual-component {
  padding-block: 3rem;
}

@media (max-width: 991px) {
  .ritual-site .menu-right {
    display: none;
    width: 100%;
  }

  .ritual-site .menu-right.is-open {
    display: block;
  }
}
