/* Course-page interactions only; existing content, colours and layout remain intact. */
:root { --programme-nav-offset: 105px; }
@media (min-width: 992px) {
    .msdu-programme .msdu-sidebar { align-self: stretch; min-width: 0; }
    .msdu-programme .msdu-sidebar .msdu-admission-wrap {
        position: sticky;
        top: var(--programme-nav-offset);
        max-height: calc(100vh - var(--programme-nav-offset) - 16px);
        max-height: calc(100dvh - var(--programme-nav-offset) - 16px);
        overflow-y: auto;
        scrollbar-width: thin;
        scrollbar-gutter: stable;
        z-index: 15;
    }
    .msdu-programme .msdu-sidebar .msdu-admission { position: static; }
}
/* Keep the mobile navigation below Bootstrap's dialog/backdrop. */
body.modal-open .navbar { z-index: 1020; }
/* Present the original hero card directly, without the old purple title bar
   or any popup-specific field, checkbox, spacing or typography overrides. */
.programme-apply-modal .modal-dialog {
    width: calc(100% - 32px);
    max-width: var(--programme-form-width, 390px);
    margin: 1.75rem auto;
}
.programme-apply-modal .modal-content {
    position: relative;
    border: 0;
    border-radius: 19px;
    background: transparent;
    overflow: visible;
    box-shadow: none;
}
.programme-apply-modal .modal-body { padding: 0; }
.programme-apply-modal .programme-popup-scope { background: transparent; }
.programme-apply-modal .modal-header {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    padding: 0;
    border: 0;
    background: transparent;
}
.programme-apply-modal .modal-header > div { display: none; }
.programme-apply-modal .btn-close-custom {
    width: 26px;
    height: 26px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #65707c;
    font-size: 18px;
    line-height: 1;
}
.programme-apply-modal .btn-close-custom:focus-visible {
    outline: 2px solid #ff7a1a;
    outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
    .programme-apply-modal.fade .modal-dialog { transition: none; }
}
