/* Alumni Registration public form — responsive, theme-independent styles */
.ar-registration{--ar-navy:#123f7a;--ar-blue:#174f91;--ar-ink:#172b45;--ar-muted:#607086;--ar-border:#d7e0eb;--ar-soft:#f4f7fb;max-width:1100px;width:100%;margin:28px auto 40px;padding:0 20px;box-sizing:border-box;color:var(--ar-ink);font-size:16px;line-height:1.5}
.ar-registration *{box-sizing:border-box}
.ar-form-heading{padding:26px 30px 20px;background:linear-gradient(120deg,#f3f7fc,#fff);border:1px solid var(--ar-border);border-bottom:3px solid var(--ar-blue);border-radius:12px 12px 0 0}
.ar-kicker{display:inline-block;color:var(--ar-blue);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ar-form-heading h2{margin:5px 0 6px;color:var(--ar-navy);font-size:clamp(24px,3vw,32px);line-height:1.2;font-weight:750}
.ar-form-heading p{margin:5px 0;color:var(--ar-muted)}
.ar-form-heading .ar-required-note{font-size:13px;margin-top:12px}.ar-required-note span{color:#b42318;font-weight:800}
.ar-registration .ar-form{margin:0;padding:26px 30px 30px;border:1px solid var(--ar-border);border-top:0;border-radius:0 0 12px 12px;background:#fff;box-shadow:0 8px 28px rgba(20,54,91,.07);max-width:none}
.ar-registration .ar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;align-items:start}
.ar-registration .ar-field{min-width:0;margin:0;display:flex;flex-direction:column;gap:7px}
.ar-registration .ar-field-full{grid-column:1/-1}
.ar-registration .ar-field>label{display:block;margin:0;color:#24364b;font-size:14px;font-weight:700;line-height:1.35}
.ar-registration .ar-optional{color:var(--ar-muted);font-weight:400;font-size:12px}
.ar-registration input:not([type=checkbox]),.ar-registration select,.ar-registration textarea{display:block;width:100%;max-width:none;min-height:44px;margin:0;padding:10px 12px;border:1px solid #c7d2e0;border-radius:6px;background:#fff;color:#172b45;font:inherit;font-size:15px;line-height:1.4;box-shadow:inset 0 1px 2px rgba(15,35,60,.03);transition:border-color .15s,box-shadow .15s}
.ar-registration textarea{min-height:92px;resize:vertical}
.ar-registration input:focus,.ar-registration select:focus,.ar-registration textarea:focus{outline:none;border-color:#2766a8;box-shadow:0 0 0 3px rgba(39,102,168,.15)}
.ar-registration input::placeholder,.ar-registration textarea::placeholder{color:#8492a5}
.ar-registration .ar-consent{padding:15px 16px;background:var(--ar-soft);border:1px solid var(--ar-border);border-radius:8px}
.ar-registration .ar-consent label{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:13px;font-weight:500;line-height:1.55}
.ar-registration .ar-consent input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:var(--ar-blue)}
.ar-registration .ar-submit-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ar-registration .ar-submit{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;margin:0;padding:12px 22px;border:0;border-radius:6px;background:var(--ar-navy);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}
.ar-registration .ar-submit:hover{background:#0b2e5d;color:#fff}.ar-registration .ar-submit:focus-visible{outline:3px solid #8db9ed;outline-offset:3px}
.ar-registration .ar-submit-row p{margin:0;color:var(--ar-muted);font-size:12px;flex:1 1 240px;text-align:right}
.ar-registration .ar-success,.ar-registration .ar-error{padding:14px 16px;margin:0 0 16px;border-radius:7px}.ar-registration .ar-success{border:1px solid #8ac9a0;background:#effaf2;color:#155c2d}.ar-registration .ar-error{border:1px solid #e8a5a5;background:#fff4f4;color:#8a1c1c}
.ar-registration .ar-hp{position:absolute!important;left:-9999px!important;height:1px!important;width:1px!important;overflow:hidden}
@media(max-width:640px){.ar-registration{padding:0 12px;margin:16px auto 28px;font-size:15px}.ar-form-heading{padding:20px 18px 16px}.ar-registration .ar-form{padding:20px 18px 22px}.ar-registration .ar-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ar-registration .ar-field-full{grid-column:auto}.ar-registration .ar-submit{width:100%}.ar-registration .ar-submit-row p{text-align:left;flex-basis:100%}}
