.school-access .access-main{max-width:680px;margin:64px auto;padding:0 24px;color:var(--legal-ink)}
.school-access .access-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:700;color:var(--legal-primary)}
.school-access h1{font-size:clamp(32px,5vw,48px);margin:14px 0 20px}
.school-access .access-intro,.school-access .access-help{color:var(--legal-muted)}
.school-access .access-form{margin:28px 0;padding:24px;background:var(--legal-surface);border:1px solid var(--legal-line);border-radius:18px}
.school-access label{display:block;font-weight:700;margin-bottom:8px}
.school-access .access-address{display:flex;align-items:center;gap:8px;border:1px solid var(--legal-line);border-radius:9px;padding:6px 12px;overflow:hidden}
.school-access .access-address input{min-width:0;width:100%;padding:8px 0;border:0;font:inherit;color:var(--legal-ink);background:var(--legal-surface)}
.school-access .access-address span{font-size:13px;white-space:nowrap;color:var(--legal-muted)}
.school-access #school-code-help{font-size:13px;margin-top:12px;color:var(--legal-muted)}
.school-access #school-code-error:not(:empty){margin-top:12px;font-weight:600}
.school-access button{display:block;width:100%;min-height:44px;margin-top:20px;padding:12px;border:0;border-radius:9px;font:600 14px/1.5 sans-serif;background:var(--legal-primary);color:var(--legal-surface);cursor:pointer}
.school-access input:focus-visible,.school-access button:focus-visible{outline:3px solid var(--legal-primary);outline-offset:3px}
.school-access .access-address:focus-within{outline:2px solid var(--legal-primary);outline-offset:2px}
.school-access .access-demo{border-top:1px solid var(--legal-line);margin-top:32px;padding-top:24px}
.school-access .access-demo h2{font-size:22px;margin-bottom:12px}
.school-access .access-demo p{color:var(--legal-muted)}
.school-access .access-demo a{display:inline-block;margin:12px 20px 0 0;color:var(--legal-primary);text-decoration:underline;text-underline-offset:4px}
.school-access .access-fallback{margin:24px 0}
@media(max-width:600px){.school-access .access-main{margin:40px auto;padding-inline:20px}.school-access .access-form{padding:18px}.school-access .access-address{flex-wrap:wrap;gap:0}.school-access .access-address span{padding-bottom:8px}}
.school-access .brand .top-brand-logo{display:block;width:126px;height:auto;max-width:100%}
