
/* Registration is part of the final scene, not a modal or another click. 
   Keep the original form IDs, required fields and submission contract. */
html body main.page > #contact.bottom.surface {
  display:flex!important;
  flex-direction:column!important;
  justify-content:safe center!important;
  align-items:stretch!important;
  gap:0!important;
  padding:clamp(22px,3vh,44px) clamp(16px,4vw,64px) clamp(18px,2.5vh,28px)!important;
  overflow-y:auto!important;
  background:radial-gradient(ellipse at 78% 10%,rgba(55,122,202,.20),transparent 52%),#102b49!important;
}
html body main.page > #contact .ralph-register-layout {
  box-sizing:border-box;
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)!important;
  align-items:center;
  gap:clamp(30px,4.5vw,76px)!important;
  width:min(1180px,100%)!important;
  max-width:1180px!important;
  margin:0 auto!important;
}
html body main.page > #contact .ralph-register-message {
  min-width:0;max-width:440px;
  color:#edf6ff;
}
html body main.page > #contact .ralph-register-message h2 {
  margin:0 0 18px!important;
  font-size:clamp(38px,4.4vw,64px)!important;
  font-weight:660;line-height:1.08;letter-spacing:-.05em;
  color:#fff!important;
}
html body main.page > #contact .ralph-register-message p {
  margin:0 0 21px;
  color:#d0e2f5;
  font-size:clamp(15px,1.15vw,17px);
  line-height:1.62;
}
html body main.page > #contact .ralph-register-message a[data-contact] {
  display:inline-flex;align-items:center;min-height:42px;
  color:#f3faff;text-underline-offset:4px;text-decoration:underline;
  font-size:15px;font-weight:600;
}
html body main.page > #contact .ralph-register-panel {
  box-sizing:border-box;min-width:0;
  width:100%!important;max-width:none!important;
  padding:clamp(19px,2.15vw,32px)!important;
  background:#fff;color:#163556;
  border:1px solid rgba(255,255,255,.8);
  border-radius:22px;
  box-shadow:0 18px 46px rgba(5,18,42,.20);
}
html body main.page > #contact .ralph-register-panel h3 {
  margin:0;
  color:#173a65;font-size:clamp(23px,2.2vw,29px);
  line-height:1.2;letter-spacing:-.035em;
}
html body main.page > #contact .ralph-register-panel > p {
  margin:7px 0 15px;
  color:#526a87;font-size:13px;line-height:1.48;
}
html body main.page > #contact #interest-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(10px,1.2vh,14px) clamp(12px,1.4vw,20px);
  min-width:0;
}
html body main.page > #contact #interest-form[hidden] {display:none!important}
html body main.page > #contact #interest-form .field {
  display:grid;align-content:start;gap:5px;
  min-width:0;margin:0;
}
html body main.page > #contact #interest-form .field[hidden] {display:none!important}
html body main.page > #contact #interest-form .field label {
  color:#243e5b;font-size:12px;line-height:1.35;font-weight:650;
}
html body main.page > #contact #interest-form .field input,
html body main.page > #contact #interest-form .field select {
  box-sizing:border-box;
  width:100%;min-width:0;min-height:40px;
  padding:8px 11px;border:1px solid #c9d7e8;
  border-radius:9px;background:#fff;color:#142f4c;
  font-size:14px;line-height:1.32;
}
html body main.page > #contact #interest-form .field :is(input,select):focus-visible {
  outline:2px solid #2767b5;outline-offset:2px;
}
html body main.page > #contact #interest-form #submit-interest {
  grid-column:1/-1;
  display:flex;align-items:center;justify-content:center;
  width:100%!important;min-height:45px;
  margin-top:1px;padding:10px 18px;
  background:linear-gradient(100deg,#0a3166,#276dc5)!important;
  border:1px solid #174c95;color:#fff;
  border-radius:50px;font-size:14px;font-weight:700;
  cursor:pointer;
}
html body main.page > #contact #interest-form #submit-interest:disabled {
  cursor:wait;opacity:.65;
}
html body main.page > #contact #interest-form :is(.status,.fine) {
  grid-column:1/-1;
  margin:0;
}
html body main.page > #contact #interest-form .status {
  min-height:0;color:#33506f;font-size:13px;
}
html body main.page > #contact #interest-form .status:empty {display:none}
html body main.page > #contact #interest-form .fine {
  color:#58708c;font-size:11px!important;line-height:1.4;
}
html body main.page > #contact #interest-form .fine a {color:#1856a1}
html body main.page > #contact .site-footer {
  box-sizing:border-box;
  position:relative!important;inset:auto!important;
  align-self:center!important;
  flex:0 0 auto!important;
  width:min(1180px,100%)!important;max-width:1180px!important;
  margin:clamp(18px,2.4vh,30px) auto 0!important;
  padding-top:12px;
  border-top:1px solid rgba(228,242,255,.22);
}
@media(max-width:880px) {
  html body main.page > #contact.bottom.surface {
    justify-content:safe flex-start!important;
    padding:clamp(22px,3vh,38px) clamp(14px,3vw,28px) 24px!important;
  }
  html body main.page > #contact .ralph-register-layout {
    grid-template-columns:minmax(0,1fr)!important;
    gap:clamp(20px,3vh,32px)!important;
    max-width:640px!important;
  }
  html body main.page > #contact .ralph-register-message {max-width:620px}
  html body main.page > #contact .ralph-register-message h2 {
    font-size:clamp(34px,5.4vw,46px)!important;
    margin-bottom:10px!important;
  }
  html body main.page > #contact .ralph-register-message p {margin-bottom:10px}
  html body main.page > #contact .ralph-register-panel {padding:clamp(19px,3vw,28px)!important}
  html body main.page > #contact .site-footer {max-width:640px!important}
}
@media(max-width:520px) {
  html body main.page > #contact .ralph-register-layout {gap:19px!important}
  html body main.page > #contact #interest-form {grid-template-columns:minmax(0,1fr)}
  html body main.page > #contact .ralph-register-panel {border-radius:18px}
  html body main.page > #contact .site-footer {flex-wrap:wrap;gap:9px 20px}
}
