:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172b40;background:#f2f5f8;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0;border-top:6px solid #bc2438}header,footer{max-width:1020px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}header>span{font-size:.875rem;color:#536276}.brand{text-decoration:none;font-weight:850;letter-spacing:.04em;color:#172b40}.brand strong{color:#bc2438}main{max-width:740px;margin:24px auto 56px;padding:0 22px}.intro{margin-bottom:28px}.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.15em;color:#a71f32}h1{font-size:clamp(2.1rem,6vw,3.3rem);line-height:1.13;letter-spacing:-.035em;margin:12px 0 18px}h2{font-size:1.4rem;line-height:1.35;margin:0 0 24px}p{margin:12px 0}.small,label>span,legend>span{font-size:.875rem;color:#536276;font-weight:400}form,.success{background:white;border:1px solid #dce3eb;border-radius:18px;box-shadow:0 12px 35px #172b4009;padding:30px}.progress{display:flex;gap:12px;justify-content:space-between;margin-bottom:30px;font-size:.8rem;color:#536276}.progress span{border-top:3px solid #dce3eb;padding-top:10px;flex:1}.progress .active{color:#a71f32;border-color:#bc2438;font-weight:750}label{display:block;font-weight:650;margin:0 0 22px}input,select,textarea{font:inherit;max-width:100%;width:100%;border:1px solid #9baabb;border-radius:8px;padding:12px;background:white;color:#172b40;margin-top:7px}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #2463aa;outline-offset:3px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}button{font:inherit;font-weight:750;cursor:pointer;border:0;border-radius:8px;padding:13px 22px;background:#b82136;color:white;min-height:50px}button:disabled{opacity:.6;cursor:wait}button:hover:not(:disabled){filter:brightness(.94)}.actions{display:flex;justify-content:space-between;gap:16px;margin-top:22px}.secondary{background:#eaf0f5;color:#172b40}fieldset{border:0;padding:0;margin:0 0 25px}legend{font-weight:650;margin-bottom:12px}.ratings{display:flex;gap:10px}.ratings label{flex:1;margin:0;position:relative}.ratings input{position:absolute;opacity:0;width:1px;height:1px}.ratings span{display:block;padding:14px 0;text-align:center;border:1px solid #9baabb;border-radius:8px;font-size:1.15rem;font-weight:750;color:#172b40}.ratings input:checked+span{background:#172b40;color:white;border-color:#172b40}.ratings input:focus-visible+span{outline:3px solid #2463aa;outline-offset:3px}.scale{display:flex;justify-content:space-between;font-size:.8rem;color:#536276;margin-top:8px}.check{display:flex;gap:12px;align-items:flex-start}.check input{width:22px;height:22px;flex-shrink:0;accent-color:#b82136}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#status{color:#a71f32}footer{border-top:1px solid #dce3eb;font-size:.875rem;justify-content:center;flex-wrap:wrap}a{color:#244f79} [hidden]{display:none!important}@media(max-width:520px){header{padding:18px}header>span{display:none}main{margin-top:18px;padding:0 16px}form,.success{padding:22px 18px}.columns{grid-template-columns:1fr;gap:0}.progress{gap:8px;font-size:.75rem}.ratings{gap:7px}button{padding:12px 18px}}

.brand{display:flex;align-items:center;gap:14px}.brand img{width:110px;height:110px;object-fit:contain;flex-shrink:0}.brand>span{font-size:1.1rem}.question{border-top:1px solid #dce3eb;padding-top:22px;margin-bottom:26px}.question>label{margin-bottom:0}.question details{margin-top:10px}.question summary{color:#244f79;cursor:pointer;padding:7px 0;font-size:.875rem;font-weight:650}.question details[open] summary{margin-bottom:8px}.question details label{font-size:.875rem;margin-bottom:0}.question summary:focus-visible{outline:3px solid #2463aa;outline-offset:3px}.student-link{display:inline-block;background:#172b40;color:white;text-decoration:none;border-radius:8px;padding:13px 22px;margin-top:8px;font-weight:750}@media(max-width:520px){.brand img{width:84px;height:84px}.brand>span{font-size:.95rem}}
