@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/montserrat-latin.woff2') format('woff2');
}
@font-face {
  font-family: Cinzel;
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url('/assets/fonts/cinzel-latin.woff2') format('woff2');
}
.themed_button {
  border: 1px solid #171717;
  background: #171717;
  color: white;
  transition: opacity .3s;
}
.themed_button:hover { opacity: .9; }
.themed_button:disabled { border-color: white; background: #d1d5db; }
[hidden] { display: none !important; }
button:focus-visible, a:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid #171717 !important;
  outline-offset: 4px;
}
[data-gallery] { touch-action: pan-y; }
.flickity-viewport { overflow: hidden; }
.flickity-slider { position: relative; height: 100%; transition: transform .35s ease; }
.flickity-slider.is-dragging { transition: none; }
.flickity-page-dots { display: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}
#leptex-site-chat.chat-attention { border-radius: 28px; animation: chat-attention 1s ease-out 3; }
@keyframes chat-attention {
  from { box-shadow: 0 0 0 0 rgb(23 23 23 / .45); }
  to { box-shadow: 0 0 0 18px rgb(23 23 23 / 0); }
}
@media (prefers-reduced-motion: reduce) {
  #leptex-site-chat.chat-attention { animation: none; box-shadow: 0 0 0 3px #171717; }
}
