/* Shared navigation geometry. High-specificity rules also work before legacy CSS. */
:root{--mwx-nav-height:100px}
html body #head.secondary{height:var(--mwx-nav-height,100px);min-height:var(--mwx-nav-height,100px);padding-top:0}
html body .mwx-content-wrap{box-sizing:border-box;width:100%;max-width:100%}
html body .page-anchor{scroll-margin-top:calc(var(--mwx-nav-height,100px) + 12px)}
html body #sideMenuBtn{top:calc(var(--mwx-nav-height,100px) + 10px)}
html body #sideMenu{padding-top:calc(var(--mwx-nav-height,100px) + 50px)}
#mwx-primary-nav.slideUp{top:calc(-1 * var(--mwx-nav-height,100px))}
html.mwx-nav-open #mwx-primary-nav{top:0}
#mwx-primary-nav .mwx-navigation{padding-right:15px;padding-left:15px}
#mwx-primary-nav .mwx-navigation::after{display:table;clear:both;content:""}
@media(min-width:992px){
 #mwx-primary-nav .mwx-navigation.collapse{display:block!important;height:auto!important;overflow:visible!important}
}
@media(max-width:991px){
 #mwx-primary-nav .navbar-header{float:none}
 #mwx-primary-nav .navbar-toggle{display:block}
 #mwx-primary-nav .navbar-brand{margin-left:0}
 #mwx-primary-nav .mwx-navigation{clear:both;max-height:calc(100vh - 100px);border:0;box-shadow:none}
 #mwx-primary-nav .mwx-navigation.collapse{display:none!important}
 #mwx-primary-nav .mwx-navigation.collapse.in{display:block!important;overflow-y:auto!important}
 #mwx-primary-nav .mwx-navigation.collapsing{overflow:hidden}
 #mwx-primary-nav .navbar-nav{float:none!important;width:auto;margin:7.5px 0}
 #mwx-primary-nav .navbar-nav>li{float:none}
 #mwx-primary-nav .navbar-nav>li>a{padding:10px 15px;text-align:right}
}

/* Restore float containment in fluid inner wrappers; section frames stay centered. */
html body .mwx-content-wrap::before,html body .mwx-content-wrap::after{display:table;content:" "}
html body .mwx-content-wrap::after{clear:both}
html body.mwx-course-page .sfx-box>video{margin-left:auto;margin-right:auto}
html body.mwx-course-page .mwx-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px 0;margin-top:10px}
html body.mwx-course-page .mwx-photo-grid>.czzp-box{float:none;width:100%;max-width:none;min-width:0;margin-top:0}
html body.mwx-course-page .mwx-photo-grid>.czzp-box>img{display:block;width:100%;max-width:100%;height:auto}
@media(min-width:992px){html body.mwx-course-page .mwx-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Keep the two news heading separators dashed at 1px. */
html body .i-news h2,html body .i-news .mwx-original-h2{border-bottom-style:dashed;border-bottom-width:1px}

/* Keep course-page article titles on one line within each column. */
html body.mwx-course-page .i-news ul>li>a{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
