.announcement{min-height:35px;height:auto;padding:7px 16px;text-align:center;line-height:1.4}
.announcement a{display:inline;color:#fff;text-decoration:underline;text-underline-offset:2px}
.brand img{width:188px;height:50px;object-fit:cover;object-position:center}
.nav-wrap{gap:20px}
.desktop-nav{gap:17px}
.desktop-nav a{white-space:nowrap}
.desktop-nav a[aria-current]{color:#087da4}
.header-phone{white-space:nowrap;font-size:12px;font-weight:800;color:#0a678c}
.mobile-menu{display:none;position:relative}
.mobile-menu summary{list-style:none;cursor:pointer;font-size:23px;color:#0b2638}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu nav{position:absolute;right:-70px;top:37px;width:220px;display:grid;background:#fff;border:1px solid #dce8ec;border-radius:9px;box-shadow:0 16px 40px rgba(10,47,66,.15);padding:10px;z-index:30}
.mobile-menu nav a{padding:9px 10px;font-size:12px;font-weight:700;color:#415767}
.mobile-menu nav a:hover{background:#e6f5f8;border-radius:5px}
.portal-intro{padding:75px 0 70px;background:linear-gradient(120deg,#0c3044,#0d6076);color:#fff}
.portal-intro .kicker{color:#91dce9}
.portal-intro h1{font:800 clamp(39px,4.5vw,62px)/1.12 Manrope,sans-serif;letter-spacing:-.055em;max-width:720px;margin:18px 0}
.portal-intro h1 em{font-style:normal;color:#91e1ee}
.portal-intro p{max-width:590px;color:#cce2e8;font-size:15px;line-height:1.7;margin:0 0 27px}
.portal-section{background:#f6fafb}
.portal-frame-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.portal-frame-heading h2{font:800 clamp(27px,3vw,38px) Manrope,sans-serif;letter-spacing:-.04em;margin:8px 0 0;color:#12394e}
.portal-frame-heading>span{font-size:11px;font-weight:800;color:#758f9a}
.portal-frame{border:1px solid #d2e4e9;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 18px 48px rgba(12,49,65,.09)}
.portal-frame iframe{display:block;width:100%;height:min(78vh,850px);min-height:620px;border:0;background:#fff}
.portal-fallback{font-size:12px;color:#68818d;line-height:1.6;margin:18px 0 0}
.portal-fallback a{color:#087da4;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1080px){.desktop-nav,.header-phone{display:none}.mobile-menu{display:block;margin-left:auto}}
@media(max-width:760px){.announcement{font-size:10px}.brand img{width:150px;height:42px}.mobile-menu nav{right:-45px}.portal-intro{padding:58px 0}.portal-frame-heading{display:block}.portal-frame-heading>span{display:block;margin-top:10px}.portal-frame iframe{height:670px;min-height:670px}}
