/* App shell tweaks for the Next.js mirror.
   Theme CSS is loaded from /hi-eye-2027/styles/HI_EYE_colors.css (public) so webpack
   does not try to resolve missing Edurock template image URLs. */

html {
  scroll-behavior: smooth;
}

/* The umbrella shell paints a gradient on <body> for its own landing page.
   The meeting theme only declares background-color, which cannot clear that
   gradient's background-image, so the shorthand has to reset it here. */
body {
  margin: 0;
  background: #fff;
}

.site-main {
  min-height: 50vh;
}

/* Desktop header CTA + sticky nav (from top_navigation.html) */
.sticky-nav-row {
  margin-bottom: 20px;
}

@media (min-width: 992px) {
  .header__area .sticky-nav-row {
    margin-bottom: 0 !important;
  }

  .header__area.is-stuck .sticky-nav-row {
    margin-bottom: 20px !important;
  }

  .header-cta-row {
    margin-top: 20px;
    margin-bottom: 12px;
  }

  .header-cta-row .headerarea__left {
    display: none !important;
  }

  .header-cta-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
  }

  .header-cta-buttons .default__button {
    padding: 8px 14px;
    font-size: 14px;
    line-height: 1.2;
  }

  .sticky-nav-row .main_menu_wrap {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .desktop-nav-logo {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
  }

  .headerarea__main__menu {
    margin-left: auto;
  }

  .headerarea__main__menu nav > ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
  }

  .headerarea__main__menu nav > ul > li {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .headerarea__main__menu nav > ul > li > a {
    padding: 0 10px;
  }
}

@media (max-width: 991px) {
  .desktop__menu__wrapper {
    display: none !important;
  }

  .header__area {
    position: relative;
    z-index: 100;
  }

  .mob_menu_wrapper {
    position: relative;
    z-index: 100;
  }

  .mobile-logo {
    position: relative;
    z-index: 101;
  }

  .mobile-off-canvas-active {
    position: fixed;
    z-index: 2000;
  }

  .body-overlay {
    z-index: 1500;
  }

  .mobile-off-canvas .mobile-aside-button {
    position: relative;
    z-index: 2100;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    background: rgba(255, 255, 255, 0.9);
    color: #000;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
  }

  .mobile-off-canvas {
    position: fixed;
    top: 18px;
    right: 24px;
    z-index: 2100;
  }

  .mobile-aside-close {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2101;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    color: #000;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
  }

  .mobile-menu .dropdown-toggle {
    background: transparent;
    border: 0;
    color: inherit;
    width: 100%;
    text-align: left;
    padding: 0;
    cursor: pointer;
  }
}

.email-signup-notice a {
  text-decoration: underline;
}

#autoHeightIframe {
  width: 100%;
  min-height: 80vh;
  border: 0;
}

/* Stova agenda / faculty widget frames, before their content is measured. */
iframe[data-containerid] {
  width: 100%;
  min-height: 70vh;
  border: 0;
}

.page-html-content img {
  max-width: 100%;
  height: auto;
}

/* Exhibitor name lists: <br>-separated runs of company names, split into two
   balanced columns. Constrained and centred so the columns stay close enough
   together to read as one list rather than drifting to the container edges. */
.exhibitor-list {
  column-count: 2;
  column-gap: 48px;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 575px) {
  .exhibitor-list {
    column-count: 1;
  }
}

/* Homepage testimonial carousel.
   The Edurock theme ships slick-arrow styling for this block, but this site
   loads Swiper instead, so the controls are styled from scratch here. */
.testimonial__slider__3 {
  padding-bottom: 4px;
}

.testimonial__slider__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 28px;
}

.testimonial__slider__3 .swiper-pagination.testimonial__pagination {
  position: static;
  display: flex;
  align-items: center;
  gap: 8px;
  width: auto;
}

.testimonial__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  margin: 0;
  background: var(--lightGrey2, #989898);
  opacity: 0.3;
  transition: var(--transition, all 0.3s ease);
}

.testimonial__pagination .swiper-pagination-bullet-active {
  width: 28px;
  border-radius: 5px;
  background: var(--primaryColor, #006bb6);
  opacity: 1;
}

.testimonial__arrows {
  display: flex;
  gap: 10px;
}

.testimonial__arrow {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--lightGrey, #dbd8d8);
  border-radius: 50%;
  background: var(--whiteColor, #fff);
  color: var(--primaryColor, #006bb6);
  cursor: pointer;
  transition: var(--transition, all 0.3s ease);
}

.testimonial__arrow:hover {
  background: var(--primaryColor, #006bb6);
  border-color: var(--primaryColor, #006bb6);
  color: var(--whiteColor, #fff);
}

@media (max-width: 767px) {
  .testimonial__slider__controls {
    margin-top: 18px;
  }

  .testimonial__arrow {
    width: 40px;
    height: 40px;
  }
}
