/* UNIVERXIAL Registration v2.8 - no dependency on WordPress body template class */
html,body{margin:0;padding:0}
.ux-registration-mode{background:#f3f7fc!important}
.uxr28-page,.uxr28-page *{box-sizing:border-box}
.uxr28-page{
    --blue:#1664e8;
    --blue-dark:#0f4db7;
    --navy:#0b2c66;
    --orange:#ff6b1a;
    --ink:#13294f;
    --muted:#6f7f99;
    --line:#d8e3f0;
    min-height:100vh;
    padding:26px 0;
    background:
      radial-gradient(circle at 6% 12%,rgba(22,100,232,.10),transparent 25%),
      radial-gradient(circle at 92% 88%,rgba(255,107,26,.08),transparent 22%),
      #f3f7fc;
    font-family:inherit;
}
.uxr28-shell{
    width:min(1320px,calc(100% - 34px));
    min-height:820px;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0,1.06fr) minmax(470px,.94fr);
    overflow:hidden;
    border:1px solid rgba(201,216,235,.86);
    border-radius:30px;
    background:#fff;
    box-shadow:0 28px 84px rgba(11,44,102,.13);
}
.uxr28-visual{
    position:relative;
    min-width:0;
    min-height:820px;
    overflow:hidden;
    background:#0c367a;
}
.uxr28-visual>img{
    position:absolute;
    inset:0;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
}
.uxr28-teacher .uxr28-visual>img{object-position:54% center!important}
.uxr28-student .uxr28-visual>img{object-position:53% center!important}
.uxr28-overlay{
    position:absolute;
    inset:0;
    background:
       linear-gradient(180deg,rgba(5,27,69,.20) 0%,rgba(5,28,72,.12) 32%,rgba(4,26,66,.86) 100%),
       linear-gradient(90deg,rgba(4,29,73,.58) 0%,rgba(4,29,73,.06) 62%,rgba(4,29,73,.18) 100%);
}
.uxr28-visual-content{
    position:relative;
    z-index:2;
    min-height:820px;
    display:flex;
    flex-direction:column;
    padding:32px 34px 30px;
}
.uxr28-brand{
    width:fit-content;
    display:inline-flex;
    text-decoration:none;
}
.uxr28-brand-plate{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 15px;
    border:1px solid rgba(255,255,255,.66);
    border-radius:16px;
    background:rgba(255,255,255,.94);
    box-shadow:0 12px 30px rgba(6,31,74,.18);
    backdrop-filter:blur(12px);
}
.uxr28-brand img{
    width:220px!important;
    max-width:50vw!important;
    height:auto!important;
    display:block!important;
}
.uxr28-story{
    margin-top:auto;
    max-width:660px;
    padding:36px 4px 26px;
    color:#fff;
}
.uxr28-kicker{
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:0 10px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:999px;
    background:rgba(255,255,255,.13);
    color:#fff;
    font-size:.69rem;
    font-weight:950;
    letter-spacing:.11em;
    backdrop-filter:blur(8px);
}
.uxr28-story h1{
    margin:17px 0 0!important;
    color:#fff!important;
    font-size:clamp(3.2rem,4.5vw,5.6rem)!important;
    line-height:.94!important;
    letter-spacing:-.06em!important;
    font-weight:950!important;
}
.uxr28-story h1 em{
    display:inline-block;
    color:#ff9a55;
    font-style:normal;
}
.uxr28-student .uxr28-story h1 em{color:#82b8ff}
.uxr28-story p{
    max-width:590px;
    margin:18px 0 0!important;
    color:rgba(255,255,255,.88)!important;
    font-size:1.03rem!important;
    line-height:1.55!important;
}
.uxr28-pills{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:18px;
}
.uxr28-pills span{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:999px;
    background:rgba(5,31,75,.38);
    color:#fff;
    font-size:.64rem;
    font-weight:850;
    backdrop-filter:blur(8px);
}
.uxr28-quote{
    display:flex;
    align-items:center;
    gap:11px;
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:15px;
    background:rgba(255,255,255,.12);
    color:#fff;
    backdrop-filter:blur(12px);
}
.uxr28-quote-mark{
    width:40px;
    height:40px;
    flex:0 0 40px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:rgba(255,255,255,.16);
    color:#ffad76;
    font-size:1.6rem;
    font-weight:950;
}
.uxr28-quote strong,.uxr28-quote small{display:block}
.uxr28-quote strong{font-size:.72rem}
.uxr28-quote small{margin-top:2px;color:rgba(255,255,255,.68);font-size:.57rem}
.uxr28-formpane{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:54px clamp(34px,4vw,64px);
    background:#fff;
}
.uxr28-form-top{text-align:center;margin-bottom:24px}
.uxr28-profile-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 13px;
    border:1px solid #d8e4f2;
    border-radius:999px;
    background:#f7faff;
    color:var(--blue);
    font-size:.68rem;
    font-weight:950;
}
.uxr28-form-top h2{
    margin:14px 0 0!important;
    color:#102b59!important;
    font-size:clamp(2rem,2.8vw,3rem)!important;
    line-height:1.03!important;
    letter-spacing:-.05em!important;
    font-weight:950!important;
}
.uxr28-form-top p{
    max-width:540px;
    margin:12px auto 0!important;
    color:#6e7d95!important;
    font-size:.86rem!important;
    line-height:1.55!important;
}
.uxr28-alert{
    margin-bottom:14px;
    padding:11px 12px;
    border:1px solid #efc9c5;
    border-radius:10px;
    background:#fff4f2;
    color:#9b4139;
    font-size:.68rem;
}
.uxr28-form{display:grid;gap:14px}
.uxr28-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.uxr28-field{display:block;margin:0!important;min-width:0}
.uxr28-field>span{
    display:block;
    margin:0 0 6px;
    color:#253e66;
    font-size:.7rem;
    font-weight:900;
}
.uxr28-control{position:relative}
.uxr28-control svg{
    position:absolute;
    left:14px;
    top:50%;
    width:19px;
    height:19px;
    transform:translateY(-50%);
    fill:none;
    stroke:#8da2bf;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
    pointer-events:none;
}
.uxr28-control input{
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    margin:0!important;
    padding:0 14px 0 44px!important;
    border:1px solid #cfdae9!important;
    border-radius:12px!important;
    outline:0!important;
    background:#fbfdff!important;
    box-shadow:none!important;
    color:#1d365c!important;
    font:inherit!important;
    font-size:.79rem!important;
    line-height:1!important;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.uxr28-control input:focus{
    border-color:#74a5ef!important;
    background:#fff!important;
    box-shadow:0 0 0 4px rgba(22,100,232,.09)!important;
}
.uxr28-submit{
    width:100%;
    min-height:55px;
    margin-top:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:0;
    border-radius:13px;
    background:linear-gradient(135deg,#2271ee,#155bd7);
    box-shadow:0 14px 26px rgba(22,100,232,.22);
    color:#fff;
    cursor:pointer;
    font:inherit;
    font-size:.75rem;
    font-weight:950;
    letter-spacing:.04em;
    transition:transform .15s ease,box-shadow .15s ease;
}
.uxr28-submit:hover{transform:translateY(-1px);box-shadow:0 17px 32px rgba(22,100,232,.27)}
.uxr28-submit svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.uxr28-divider{
    position:relative;
    margin:22px 0 17px;
    text-align:center;
}
.uxr28-divider::before{
    content:"";
    position:absolute;
    left:0;right:0;top:50%;
    height:1px;
    background:#e3e9f1;
}
.uxr28-divider span{
    position:relative;
    z-index:1;
    display:inline-grid;
    place-items:center;
    width:28px;height:28px;
    border:1px solid #dce5f0;
    border-radius:50%;
    background:#fff;
    color:#9aa7b8;
    font-size:.61rem;
}
.uxr28-links{display:grid;gap:11px}
.uxr28-links>div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:11px 12px;
    border:1px solid #e2e8f0;
    border-radius:11px;
    background:#fbfdff;
}
.uxr28-links span{color:#75839a;font-size:.65rem}
.uxr28-links a{color:var(--blue);font-size:.65rem;font-weight:900;text-decoration:none;text-align:right}
.uxr28-trust{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:9px 15px;
    margin-top:19px;
    color:#8794a7;
    font-size:.55rem;
}
.uxr28-trust span::first-letter{color:#32a05a}

@media(max-width:1080px){
    .uxr28-shell{grid-template-columns:minmax(0,1fr) minmax(430px,.95fr)}
    .uxr28-story h1{font-size:clamp(3rem,5vw,4.6rem)!important}
    .uxr28-formpane{padding:46px 32px}
}
@media(max-width:900px){
    .uxr28-page{padding:18px 0 28px}
    .uxr28-shell{width:min(100% - 28px,760px);grid-template-columns:1fr;min-height:0}
    .uxr28-visual,.uxr28-visual-content{min-height:470px}
    .uxr28-visual-content{padding:26px}
    .uxr28-story{padding-top:50px}
    .uxr28-story h1{font-size:clamp(3rem,8vw,4.5rem)!important}
    .uxr28-formpane{padding:42px 34px}
}
@media(max-width:620px){
    .uxr28-page{padding:9px 0 18px}
    .uxr28-shell{width:min(100% - 18px,760px);border-radius:21px}
    .uxr28-visual,.uxr28-visual-content{min-height:410px}
    .uxr28-visual-content{padding:18px}
    .uxr28-brand-plate{padding:8px 11px;border-radius:13px}
    .uxr28-brand img{width:185px!important;max-width:58vw!important}
    .uxr28-story{padding:34px 0 18px}
    .uxr28-story h1{font-size:clamp(2.65rem,12vw,3.6rem)!important}
    .uxr28-story p{font-size:.88rem!important}
    .uxr28-pills{gap:6px}.uxr28-pills span{min-height:32px;padding:0 9px;font-size:.58rem}
    .uxr28-quote{display:none}
    .uxr28-formpane{padding:36px 18px 27px}
    .uxr28-grid{grid-template-columns:1fr}
    .uxr28-form-top h2{font-size:2rem!important}
    .uxr28-form-top p{font-size:.79rem!important}
    .uxr28-control input{height:50px!important}
    .uxr28-links>div{align-items:flex-start;flex-direction:column;gap:4px}
    .uxr28-links a{text-align:left}
}
@media(max-width:390px){
    .uxr28-visual,.uxr28-visual-content{min-height:380px}
    .uxr28-story h1{font-size:2.55rem!important}
    .uxr28-formpane{padding-left:14px;padding-right:14px}
}
