.reqform{width:min(620px,92%);margin:0 auto;padding:40px 0 80px}.reqform .back{font-family:var(--font-brand-serif);letter-spacing:.04em;color:var(--primary);font-size:.78rem;font-weight:500;text-decoration:none}.reqform .eyebrow{font-family:var(--font-brand-serif);letter-spacing:.14em;text-transform:uppercase;color:var(--aml-crimson);margin-top:1rem;margin-bottom:.35rem;font-size:.74rem;font-weight:700;display:block}.reqform h1{font-family:var(--font-display);color:var(--aml-navy);margin:0 0 .4rem;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:600;line-height:1.1}.reqform h1 em{color:var(--aml-terracotta);font-style:normal}.reqform .lead{font-family:var(--font-sans);color:var(--muted-foreground);margin-bottom:1.8rem}.reqform fieldset{border:0;margin:0 0 1.3rem;padding:0}.reqform legend{font-family:var(--font-sans);color:var(--foreground);margin-bottom:.5rem;padding:0;font-size:.85rem;font-weight:800}.reqform .group-note{color:var(--muted-foreground);margin:-.5rem 0 1.1rem;font-size:.9rem;line-height:1.5}.reqform .section-title{font-family:var(--font-display);color:var(--aml-navy);border-top:2px solid color-mix(in srgb, var(--aml-terracotta) 30%, transparent);margin:2.4rem 0 1.2rem;padding-top:1.3rem;font-size:1.3rem;font-weight:600}.reqform .section-break{border:none;border-top:2px solid color-mix(in srgb, var(--aml-terracotta) 30%, transparent);margin:2.4rem 0 1.8rem}.reqform .req{color:var(--primary)}.reqform .opt-hint{color:var(--muted-foreground);font-weight:500}.reqform .schoolrow{margin:1rem 0 1.9rem}.reqform .otherrow{margin:0 0 1.5rem}.reqform .classrow{margin:0 0 2.2rem}.reqform .otherrow-tight{margin:.75rem 0 0}.reqform .field-hint{font-family:var(--font-sans);color:var(--muted-foreground);margin:-.15rem 0 .45rem;font-size:.8rem}.reqform .reveal{border-left:3px solid var(--border);margin:-.4rem 0 1.3rem;padding-left:1rem}.reqform .next-steps{background:var(--aml-cream);border-radius:var(--radius,.9rem);margin-top:2.6rem;padding:1.5rem 1.6rem}.reqform .next-steps h2{font-family:var(--font-display);color:var(--aml-navy);margin:0 0 .8rem;font-size:1.25rem;font-weight:600}.reqform .next-steps ol{flex-direction:column;gap:.5rem;margin:0;padding-left:1.2rem;display:flex}.reqform .next-steps li{font-family:var(--font-sans);color:var(--foreground);line-height:1.45}.reqform .grid2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.reqform .consent{cursor:pointer;font-family:var(--font-sans);-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.55rem;font-size:.95rem;line-height:1.5;display:flex}.reqform .consent input{accent-color:var(--primary);flex:none;width:17px;height:17px;margin-top:.18rem}.reqform .grid2+fieldset{margin-top:1.9rem}.reqform .err{color:var(--aml-crimson);font-family:var(--font-sans);align-items:center;gap:.3rem;margin-top:.3rem;font-size:.8rem;font-weight:700;display:flex}.reqform .field-err .input,.reqform .field-err .select,.reqform .field-err .textarea{border-color:var(--aml-crimson)}.reqform .banner{margin-bottom:1.4rem}.reqform .submit-row{align-items:center;gap:1rem;margin-top:1.6rem;display:flex}.reqform .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.reqform .avail-scroll{-webkit-overflow-scrolling:touch;margin:.2rem 0;overflow-x:auto}.reqform .avail-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:460px;font-family:var(--font-sans)}.reqform .avail-grid th{color:var(--foreground);text-align:center;padding:.5rem .35rem;font-size:.8rem;font-weight:700}.reqform .avail-grid thead th{color:var(--aml-navy);border-bottom:1.5px solid var(--border)}.reqform .avail-grid th.avail-band{text-align:left;white-space:nowrap;color:var(--muted-foreground);padding-right:.8rem}.reqform .avail-grid td{text-align:center;border-bottom:1px solid var(--border);padding:.3rem}.reqform .avail-grid tbody tr:last-child td{border-bottom:0}.reqform .avail-cell{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:.35rem;transition:background .12s;display:flex}.reqform .avail-cell:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.reqform .avail-cell:has(input:checked){background:color-mix(in srgb, var(--primary) 14%, var(--card))}.reqform .avail-cell:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--ring) 22%, transparent)}.reqform .avail-cell input{accent-color:var(--primary);cursor:pointer;width:17px;height:17px;margin:0}@media (max-width:560px){.reqform .grid2{grid-template-columns:1fr}}
