/* Accessible responsive layer — MEChA x SHPE */
:root{--tap-min:44px}*,*::before,*::after{box-sizing:border-box}img,video,iframe{max-width:100%;height:auto}main,section,article,aside{min-width:0}html{overflow-x:clip}body{overflow-x:hidden}a,button,input,select,textarea{touch-action:manipulation}button,.cta,.form-action,.topnav a,.header-join{min-height:44px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ef853d;outline-offset:3px}input,textarea,select{max-width:100%;font-size:16px!important} .form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-fields label{display:flex;flex-direction:column;gap:8px;min-width:0}.form-fields .full{grid-column:1/-1}.form-fields input:not([type=checkbox]),.form-fields select,.form-fields textarea{width:100%;min-width:0}.form-fields label:has(input[type=checkbox]){display:flex;flex-direction:row;align-items:flex-start}.form-fields input[type=checkbox]{flex:0 0 auto;margin-top:5px}
@media(max-width:800px){.form-fields{grid-template-columns:minmax(0,1fr)}.form-fields .full{grid-column:1} .leadership-grid,.cards-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}h1,h2,h3{overflow-wrap:break-word}main{width:100%}.container,.shell,.site-shell{max-width:100%;padding-left:clamp(16px,4vw,32px)!important;padding-right:clamp(16px,4vw,32px)!important}}
@media(max-width:580px){.leadership-grid,.cards-grid,.feature-grid{grid-template-columns:minmax(0,1fr)!important}.campus-image{min-height:310px!important}.welcome{grid-template-columns:1fr!important}.welcome-text h1{font-size:clamp(2.2rem,9vw,3.2rem)!important;line-height:1.12!important}.story-wrap h2{font-size:clamp(2rem,8vw,3rem)!important;line-height:1.15!important}.form-card{padding:20px 16px!important}.form-fields{gap:15px}.topnav{overflow-x:auto;scrollbar-width:thin;white-space:nowrap;scroll-snap-type:x proximity}.topnav a{scroll-snap-align:start}.header-join{max-width:145px;white-space:normal}.campus-graphic img.hero-emblem{width:min(60vw,200px)!important;max-width:200px!important}section{scroll-margin-top:88px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
