:root{
  --navy:#0B3D63;--navy2:#082e4b;--ink:#173042;--muted:#60717d;--cream:#f7f4ee;
  --paper:#fff;--line:#d9e1e5;--teal:#2f6f73;--terracotta:#a85d48;--ok:#17633b;--danger:#a12d2d;
}
*{box-sizing:border-box}
html{font-family:Georgia,"Times New Roman",serif;background:var(--cream);color:var(--ink)}
body{margin:0;min-height:100vh}
a{color:inherit}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:20}
.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 max(24px,calc((100vw - 1380px)/2));background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand img{border-radius:50%}.brand span{display:grid}.brand strong{letter-spacing:.05em;color:var(--navy);font-size:1.05rem}.brand small{color:var(--muted);font-size:.78rem}.back{text-decoration:none;font-weight:700;color:var(--navy)}
.layout{width:min(1380px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(340px,.85fr) minmax(560px,1.15fr);gap:clamp(32px,5vw,88px);padding:clamp(46px,6vw,88px) 0}
.intro{position:sticky;top:112px;align-self:start}.eyebrow{font:700 .74rem/1.2 Arial,sans-serif;letter-spacing:.15em;color:var(--teal);margin:0 0 .85rem}
h1,h2{color:var(--navy);margin:.2rem 0 1rem;line-height:1.05}h1{font-size:clamp(2.4rem,4vw,4.8rem);max-width:13ch}h2{font-size:clamp(2rem,3vw,3.2rem)}
.lead{font-size:1.15rem;line-height:1.65;color:#334d5c;max-width:58ch}
.professional-registration{margin-top:2rem;padding:1.3rem 1.4rem;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:0 12px 12px 0;background:var(--paper)}.professional-registration h2{font-size:1.25rem;line-height:1.35;margin:0 0 .35rem}.professional-registration p{font-size:1rem;line-height:1.55;margin:.75rem 0 0}.professional-registration .registration-role{margin:0;font-weight:700;color:var(--navy)}.professional-registration .registration-detail{font-size:.9rem;color:var(--muted)}
.privacy-note{margin:2rem 0;padding:1.2rem 1.3rem;border-left:5px solid var(--terracotta);background:#fff9f5;border-radius:0 10px 10px 0}.privacy-note strong{color:#7e3e2f}.privacy-note p{margin:.5rem 0 0;line-height:1.55}
.form-card h2{font-size:1.8rem;line-height:1.2}.form-help{margin:0 0 1.5rem;font-size:.9rem;line-height:1.5;color:var(--muted)}
.form-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,4vw,52px);box-shadow:0 16px 40px rgba(11,61,99,.08)}
form{display:grid;gap:1.35rem}fieldset{border:0;padding:0;margin:0}legend{font-weight:700;color:var(--navy);margin-bottom:.8rem}
.segment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.segment-grid label{position:relative}.segment-grid input{position:absolute;opacity:0}.segment-grid span{display:grid;align-items:center;line-height:1.4;border:1px solid var(--line);border-radius:12px;padding:.85rem;min-height:78px;height:100%;cursor:pointer;background:#fff}.segment-grid input:checked+span{border-color:var(--navy);box-shadow:0 0 0 2px rgba(11,61,99,.12);background:#f5f9fc}.segment-grid input:focus-visible+span{outline:3px solid #9fc5dd}
.field{display:grid;gap:.45rem}.field label{font-weight:700;color:var(--ink)}input,textarea,select{font:inherit;width:100%;border:1px solid #b8c5cc;border-radius:9px;padding:.85rem .9rem;background:#fff;color:var(--ink)}textarea{resize:vertical;line-height:1.5}input:focus,textarea:focus{outline:3px solid rgba(47,111,115,.18);border-color:var(--teal)}.field small,.microcopy{color:var(--muted);font-size:.84rem;line-height:1.45}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}hr{border:0;border-top:1px solid var(--line);width:100%;margin:.15rem 0}
.consent{display:flex;gap:.7rem;align-items:flex-start;font-size:.93rem;line-height:1.5}.consent input{width:18px;height:18px;margin-top:.15rem;flex:none}
.optional-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0}.optional-details summary{cursor:pointer;font-weight:700;color:var(--navy);line-height:1.5}.optional-details summary:focus-visible{outline:3px solid #9fc5dd;outline-offset:4px}.optional-details .field{margin-top:1rem}.microcopy{margin:0}
.button{appearance:none;border:0;border-radius:9px;background:var(--navy);color:#fff;padding:.9rem 1.2rem;font:bold .95rem Arial,sans-serif;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center}.button:hover{background:var(--navy2)}.button:disabled{opacity:.55;cursor:not-allowed}.button.secondary{background:var(--teal);margin-top:.7rem}
.alert{padding:1rem 1.1rem;border-radius:9px;line-height:1.5}.alert.error{background:#fff2f2;color:var(--danger);border:1px solid #efbcbc}.alert.success{background:#eef9f1;color:var(--ok);border:1px solid #b7dfc3}.alert p{margin:.4rem 0}
footer{width:min(1380px,calc(100% - 40px));margin:0 auto;padding:1.5rem 0 2.5rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted)}
[hidden]{display:none!important}
@media(max-width:1040px){.layout{grid-template-columns:1fr;max-width:760px}.intro{position:static}.segment-grid{grid-template-columns:1fr}.segment-grid span{min-height:auto}.topbar{padding:0 20px}}
@media(max-width:620px){.layout{width:min(100% - 28px,760px);padding:32px 0}.topbar{min-height:68px}.brand small{display:none}.back{font-size:.88rem}.two-col{grid-template-columns:1fr}.form-card{padding:22px 18px}h1{font-size:2.45rem}footer{width:calc(100% - 28px);display:grid;gap:.35rem}}


.selected-context{padding:13px 16px;margin:0 0 22px;border-left:3px solid var(--teal);border-radius:0 8px 8px 0;background:#f1f6f3;color:var(--navy);font-size:.95rem;line-height:1.5}
