/* AHMC consultation and secondary-program forms: shared accessible controls. */
.eng-wrap{width:min(1200px,calc(100% - 4rem));margin-inline:auto}
.engagement-form{display:grid;grid-template-columns:minmax(0,1fr);gap:1.35rem;color:#061b49;font-family:var(--sans,'AHMC Manrope',Arial,sans-serif)}
.eng-field{min-width:0;margin:0;padding:0;border:0}
.eng-field>label,.eng-field>legend{display:block;padding:0;margin:0 0 .55rem;font-size:.9rem;font-weight:700;line-height:1.55;color:#061b49}
.eng-optional,.eng-help{font-size:.81rem!important;color:#526078!important;font-weight:400;line-height:1.6!important}
.engagement-form input:not([type=checkbox]):not([type=hidden]),.engagement-form textarea,.engagement-form select{display:block;width:100%;min-width:0;min-height:48px;border:1px solid #aeb9cc;border-radius:3px;background:#fff;padding:.8rem .95rem;color:#061b49;font-family:inherit;font-size:16px;line-height:1.5;box-sizing:border-box;transition:border-color .15s}
.engagement-form textarea{resize:vertical;min-height:132px}
.engagement-form input[type=file]{padding:.7rem;line-height:1.5}
.engagement-form input::file-selector-button{font:inherit;min-height:44px;border:1px solid #aeb9cc;border-radius:2px;color:#061b49;background:#eef2f8;margin-right:.75rem;padding:.5rem .7rem;cursor:pointer}
.eng-help{margin:.55rem 0 0}
.engagement-form .eng-error{display:block;color:#ad1528;font-size:.8rem;line-height:1.55;font-weight:600;margin:.4rem 0 0;min-height:0}
.eng-error:empty{margin:0}
.engagement-form .is-invalid input:not([type=checkbox]),.engagement-form .is-invalid select,.engagement-form .is-invalid textarea{border-color:#ad1528;box-shadow:0 0 0 1px #ad1528}
.engagement-form :is(input,textarea,select,button,a):focus-visible{outline:3px solid #14589b;outline-offset:3px}
.eng-group{margin:0;padding:1.5rem 0 0;border:0;border-top:1px solid #dce2ed;display:grid;gap:1.15rem;min-width:0}
.eng-group>legend{padding:0 .75rem 0 0;margin:0;font-size:.73rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#a61927}
.eng-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem .7rem;margin:.5rem 0 0}
.eng-options>label,.eng-consent,.engagement-form .program-checkbox-label{display:flex;align-items:flex-start;gap:.65rem;min-height:44px;padding:.65rem 0;font-size:.9rem!important;font-weight:400!important;line-height:1.65;margin:0;color:#061b49}
.engagement-form input[type=checkbox]{accent-color:#a61927;flex:0 0 auto;width:19px;height:19px;min-height:0;margin:.17rem 0 0}
.engagement-form a{color:#ad1528;text-decoration:underline;text-underline-offset:3px}
.engagement-form button[type=submit]{justify-self:start;min-height:48px;max-width:100%;white-space:normal;font-weight:700}
.engagement-form button[disabled]{opacity:.65;cursor:wait}
.engagement-form [data-form-status]{margin:0;padding:0;font-size:.95rem;line-height:1.65;overflow-wrap:anywhere}
.engagement-form [data-form-status]:empty{display:none}
.engagement-form [data-form-status].error{padding:.8rem 1rem;background:#fff1f2;border-left:3px solid #ad1528;color:#861724}
.engagement-form [data-form-status].success{padding:1rem;background:#eef7f3;border-left:3px solid #23704c;color:#154c36}
.eng-delivery-note{font-size:.82rem!important;line-height:1.65;color:#526078;padding:.8rem 1rem;border:1px solid #dce2ed;background:#f7f9fc;margin:0}
.eng-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contact-main{color:#061b49}
.contact-hero{padding:clamp(2.4rem,4vw,4rem) 0 2.25rem;border-bottom:1px solid #e1e6ee}
.contact-kicker{margin:0 0 1rem;font-size:.73rem!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a61927!important;line-height:1.5!important}
.contact-hero h1{font-family:var(--sans);font-size:clamp(2.1rem,4vw,3.8rem);font-weight:800;line-height:1.14;letter-spacing:-.045em;margin:0;max-width:22ch;text-wrap:balance}
.contact-hero p:not(.contact-kicker){max-width:72ch;line-height:1.8;margin:1.3rem 0 0;color:#465570;font-size:1rem}
.contact-section{padding:clamp(2.5rem,5vw,5rem) 0}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.contact-form-card{min-width:0;scroll-margin-top:120px;border:1px solid #dce2ed;border-top:3px solid #e21a22;background:#fff;padding:clamp(1.3rem,3vw,2.4rem)}
.contact-refresh h2{font-family:var(--sans);font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.24;font-weight:800;letter-spacing:-.035em;margin:0 0 1rem;color:#061b49}
.eng-form-intro{color:#465570;line-height:1.75;font-size:.95rem;margin:0 0 1.75rem}
.contact-side{position:sticky;top:125px;min-width:0;padding-top:.6rem}
.contact-next{margin:1.75rem 0 0;padding:0;list-style:none;counter-reset:next-step}
.contact-next li{counter-increment:next-step;position:relative;padding-left:2.8rem;margin:0 0 1.6rem}
.contact-next li::before{content:counter(next-step);position:absolute;left:0;top:0;display:grid;place-items:center;width:30px;height:30px;border:1px solid #dce2ed;background:#f1f4f8;color:#a61927;font-weight:800;font-size:.8rem}
.contact-next h3{font-size:1rem;line-height:1.5;font-weight:700;margin:0 0 .4rem}
.contact-next p,.contact-direct p{font-size:.93rem;line-height:1.8;color:#465570;margin:0}
.contact-direct{border-top:1px solid #dce2ed;padding-top:1.75rem;margin-top:2.2rem}
.contact-direct h2{font-size:1.3rem}
.contact-direct a{display:flex;align-items:center;min-height:44px;font-size:1rem;color:#ad1528;font-weight:700;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-direct p{margin:0 0 .7rem}
@media(max-width:760px){.eng-wrap{width:calc(100% - 2rem)}.contact-grid{grid-template-columns:1fr;gap:2.5rem}.contact-side{position:static;padding:0 .3rem}.contact-hero{padding:2rem 0 1.75rem}.contact-form-card{padding:1.35rem 1rem}.eng-options{grid-template-columns:1fr}.contact-section{padding-top:1.75rem}.engagement-form button[type=submit]{justify-self:stretch;justify-content:center}.contact-hero h1{font-size:clamp(2rem,7vw,2.8rem)}}
@media(prefers-reduced-motion:reduce){.engagement-form *{transition:none!important;scroll-behavior:auto!important}}
