/* Q-TON archived theme repair: keep the generated recovery menu as the one
   primary mobile navigation, without the donor bar overlapping it. */
body > .dr-navigation[data-dr-placement="header-fallback"] {
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  box-sizing: border-box !important;
  min-height: 58px !important;
  padding: 6px 24px !important;
  background: #050509 !important;
  color: #fff !important;
}
body > .dr-navigation[data-dr-placement="header-fallback"] .qton-brand {
  display: block !important;
  flex: 0 0 auto !important;
  line-height: 0 !important;
}
body > .dr-navigation[data-dr-placement="header-fallback"] .qton-brand img {
  display: block !important;
  width: auto !important;
  max-width: 64px !important;
  max-height: 46px !important;
}
body > .dr-navigation[data-dr-placement="header-fallback"] > .dr-menu {
  flex: 1 1 auto !important;
}
.qton-footer {
  box-sizing: border-box;
  margin-top: 0;
  padding: 42px 24px 22px;
  color: #fff;
  background: #050509;
  font: 400 16px/1.55 Arial, sans-serif;
}
.qton-footer-inner {
  display: flex;
  justify-content: space-between;
  gap: 36px;
  width: min(1120px, 100%);
  margin: 0 auto;
}
.qton-footer-about strong {
  color: #00f1f5;
  font-size: 28px;
  letter-spacing: .08em;
}
.qton-footer h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 20px;
}
.qton-footer p { margin: 8px 0 0; }
.qton-footer a { color: #fff; text-decoration: none; }
.qton-footer-meta {
  width: min(1120px, 100%);
  margin: 30px auto 0;
  padding-top: 12px;
  border-top: 1px solid #ffffff2b;
  color: #bac1d1;
  font-size: 13px;
}
.contact .btn-primary,
.ready-wrapper .btn-primary {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.qton-generated-photo {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 4px;
}
.qton-generated-visual {
  min-height: 260px;
}
@media (max-width: 800px) {
  body { overflow-x: hidden !important; }
  /* The donor Bootstrap bar duplicates the recovered links on phones and
     uses absolute positioning. The generated menu is the accessible primary
     navigation, so remove that duplicate bar at this breakpoint. */
  body > nav.navbar { display: none !important; }
  body > .dr-navigation[data-dr-placement="header-fallback"] {
    display: block !important;
    position: relative !important;
    z-index: 1100 !important;
    margin-top: 0 !important;
    padding: 0 !important;
  }
  body > .dr-navigation[data-dr-placement="header-fallback"] > .dr-mobile-toggle {
    position: relative !important;
    z-index: 1101 !important;
    width: 100% !important;
  }
  body > .dr-navigation[data-dr-placement="header-fallback"] .qton-brand {
    display: none !important;
  }
  .qton-footer-inner {
    display: block;
  }
  .qton-footer-contact {
    margin-top: 24px;
  }
}

/* The archived Owl carousel positions hidden speaker cards outside the
   viewport. A static responsive grid keeps every recovered image in the
   document bounds and remains usable without the donor's remote JS. */
.carousel-speakers.owl-carousel .owl-stage {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  transform: none !important;
}
.carousel-speakers.owl-carousel .owl-item {
  width: auto !important;
  float: none !important;
}
@media (max-width: 1000px) {
  .carousel-speakers.owl-carousel .owl-stage {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 800px) {
  .carousel-speakers.owl-carousel .owl-stage {
    grid-template-columns: 1fr !important;
  }
}
