[hidden]{display:none!important}
.switcher{display:flex;background:#e9f2fa;border-radius:14px;padding:4px;margin-bottom:24px}
.switcher button{flex:1;border:0;border-radius:11px;padding:10px;background:transparent;color:#426380;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.switcher [aria-pressed=true]{background:white;color:#11699d;box-shadow:0 2px 8px #1b527320}
#details{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
#signup label{display:block;font-size:13px;font-weight:700}
#details label:nth-of-type(-n+2){grid-column:1/-1}
#signup select,#signup input:not([type=hidden]){width:100%;padding:12px 10px;border:1px solid #c9dcec;background:#f9fcff;border-radius:11px;color:#173452;font:inherit;font-size:16px;margin-top:5px}
#signup select:focus,#signup input:focus{outline:2px solid #188bc9;outline-offset:1px}
#signup input[readonly]{background:#edf3f8;color:#566e81}
#verification{margin-top:15px}
#regOtp{letter-spacing:.35em}
#regStatus{font-size:14px;color:#20567c;line-height:1.5}
#regStatus[data-error=true]{color:#9b2539}
.regActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.regActions button{border:0;background:transparent;padding:5px 0;color:#176aa0;cursor:pointer;font:inherit;font-weight:700;font-size:13px}
.regActions button:disabled{color:#627683;cursor:default}
.sr{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
@media(max-width:380px){.card{padding-inline:18px}#details{grid-template-columns:1fr}}
.links .new-registration{margin-left:auto;font-size:12px;text-align:right}
#contactDialog{max-width:min(92vw,430px);padding:28px;border:1px solid #d4e5f2;border-radius:20px;color:#173452;box-shadow:0 20px 65px #12364f35}
#contactDialog::backdrop{background:#17345270}
#contactDialog h2{margin:0;font-size:23px}
#contactDialog p{line-height:1.6}
#contactDialog form{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
#contactDialog button{border:0;border-radius:10px;padding:11px 15px;font:inherit;font-weight:700;background:#edf4fa;color:#174f73;cursor:pointer}
#contactDialog [value=login]{background:#147cb5;color:white}

body{align-content:center;gap:22px}
.layout{width:min(100%,1020px)}
.intro{background:linear-gradient(145deg,#112d49,#154b66 70%,#176570);overflow:hidden}
.brandbar,.portal-footer nav{display:flex;align-items:center;gap:15px}
.brandbar{justify-content:space-between}.brandbar a{color:white;font-weight:800;text-decoration:none;letter-spacing:.08em}.brandbar span,.intro h1 em{color:#98ebdb}.brandbar .share{font-size:12px;letter-spacing:0;font-weight:600}
.intro h1{font-size:clamp(30px,3.5vw,46px);margin:34px 0 8px}.intro h1 em{display:block;font-weight:500;font-style:normal;font-size:.72em;line-height:1.19;letter-spacing:-.035em;margin-top:7px}
.tool-art img{display:block;width:100%;height:auto;margin:6px auto 12px}.more{font-size:13px;line-height:1.6;color:#dcf6f3;margin-top:10px}.more summary{cursor:pointer;color:white;font-weight:700}
.card{align-self:center;width:100%;min-width:0}
.submit{background:linear-gradient(110deg,#12669b,#117c86)}
.portal-footer{max-width:100%;text-align:center;color:#50677a}.portal-footer nav{justify-content:center;flex-wrap:wrap;gap:6px 15px;margin:5px}.portal-footer a{color:#365970;font-size:12px;text-decoration:none}.portal-footer a:hover{text-decoration:underline}.portal-footer small{display:block;margin-top:8px}
@media(max-width:720px){.intro h1{font-size:26px;margin-top:14px}.tool-art{width:60%;max-width:235px}.intro p{line-height:1.5}.more{margin-top:5px}.card{padding-top:22px}.intro{padding:18px 24px}}
