/* Image-only branding and always-visible navigation. No collapsed menu. */
.header{height:auto;min-height:70px;padding:8px 4.5vw;gap:20px;flex-wrap:wrap;align-items:center}
.header .brand{position:relative;display:block;flex:0 0 92.5px;width:92.5px;height:54px;overflow:hidden;margin:0}
/* Fit the supplied transparent image without stretching or editing it. */
.header .brand img{position:absolute;left:50%;top:50%;width:92.5px;height:92.5px;max-width:none;object-fit:contain;margin:0;transform:translate(-50%,-50%)}
.header .brand span,.header .menu-button{display:none!important}
.header nav,.header nav.open{display:flex;position:static;flex:1 1 700px;width:auto;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px 18px;max-height:none;overflow:visible;background:transparent;border:0;padding:0}
.header nav a{font-size:12px;line-height:1.4;padding:9px 0;white-space:nowrap}
.header nav .school-return{padding:9px 0 9px 15px;border-top:0;border-left:1px solid var(--line)}
.header .search-link{flex:none;margin-left:auto;font-size:30px}
@media(max-width:1100px){.header{gap:0 15px}.header nav,.header nav.open{order:3;flex:1 1 100%;justify-content:center;gap:3px 17px;padding:4px 0 8px}.header .brand{flex-basis:87.5px;width:87.5px;height:51px}.header .brand img{width:87.5px;height:87.5px}}
@media(max-width:650px){.header{padding:3px 5vw 0;min-height:0;gap:0 12px}.header .brand{flex-basis:77.5px;width:77.5px;height:46px}.header .brand img{width:80px;height:80px}.header nav,.header nav.open{display:flex;flex:1 1 100%;width:100%;min-width:0;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9ab1bc transparent;gap:19px;padding:6px 0 8px}.header nav a{font-size:13px;flex:none;padding:9px 0}.header .search-link{font-size:28px}.header nav .school-return{padding-left:16px}}
