/* Fixes from the college review (Oct 2026). Loaded after all theme/Elementor CSS. */

/* M01: mobile/tablet dropdown menu was clipped to 33px (inherited height + overflow).
   Let it grow to its content, scroll only if taller than the screen. */
.elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  height: auto !important;
  max-height: calc(100vh - 140px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  box-shadow: 0 8px 16px rgba(0, 0, 0, .15);
}
nav.elementor-nav-menu--dropdown .elementor-item,
nav.elementor-nav-menu--dropdown .elementor-sub-item { min-height: 44px; display: flex; align-items: center; }
.elementor-menu-toggle:focus-visible,
nav.elementor-nav-menu--dropdown a:focus-visible { outline: 2px solid #3a9bd3; outline-offset: 2px; }

/* M04: blog posts kept (testimonials) without the blog sidebar use the full width */
.content.entry.cl-fullwidth { width: 100% !important; float: none !important; max-width: 860px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }

/* M06: course availability labels are visible (they were hidden on every device on the old site) */
.cl-course-status { display: block !important; }
.cl-course-status .elementor-heading-title { margin-top: 8px; font-size: 14px; font-weight: 700; color: #b23b3b; }

/* M07 / M12: recruitment intro, privacy note under forms, past-course notice */
.cl-role-intro { margin: 0 0 24px; font-size: 16px; line-height: 1.6; }
.cl-form-privacy { margin-top: 16px; font-size: 14px; }
.cl-past-notice { max-width: 1160px; margin: 24px auto; padding: 14px 20px; border-left: 4px solid #3a9bd3; background: #eef6fb; font-size: 16px; line-height: 1.5; }
