/* Mentor4Thesis Revision 14: sitewide logo consistency and navigation hardening */


html, body {
  max-width: 100%;
  overflow-x: hidden;
}
@supports (overflow: clip) {
  html, body { overflow-x: clip; }
}

/* Use the complete approved cap + shield + book + progress-arrow mark everywhere. */
.cta-icon img {
  display: block;
  width: 82%;
  height: 82%;
  max-width: 58px;
  max-height: 58px;
  object-fit: contain !important;
  object-position: center;
}

.footer-logo {
  display: block;
  width: 58px;
  height: 58px;
  padding: 6px;
  box-sizing: border-box;
  object-fit: contain !important;
  object-position: center;
  border-radius: 16px;
  background: #fff;
}

/* Keep dropdown labels and arrows visible and consistent across pages/browsers. */
.nav-dropdown > .dropdown-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
}

.nav-dropdown > .dropdown-toggle svg {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px;
  flex: 0 0 16px;
  overflow: visible;
}

@media (min-width: 1181px) {
  .site-header,
  .nav-shell,
  .nav-links {
    overflow: visible !important;
  }

  .nav-dropdown {
    position: relative;
  }

  .nav-dropdown > .dropdown-menu {
    z-index: 10000 !important;
  }
}

@media (max-width: 1180px) {
  body.is-mobile-nav .mobile-toggle { display: flex !important; }
  body.is-mobile-nav .nav-actions .btn-outline { display: none !important; }

  .nav-links .nav-dropdown,
  .nav-links .dropdown-toggle {
    width: 100%;
    min-width: 0;
  }

  .nav-links .dropdown-toggle {
    justify-content: space-between;
  }

  .nav-links .dropdown-toggle svg {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px;
    flex-basis: 18px;
  }

  .nav-dropdown.is-active > .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    max-height: 65vh !important;
    max-height: 65dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 640px) {
  .cta-icon img { width: 84%; height: 84%; }
  .footer-logo { width: 58px; height: 58px; padding: 6px; }
}
