/* Bosenet — site styles. Fonts are self-hosted (no Google Fonts requests). */
@font-face{font-family:'Outfit';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/outfit-latin-300-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/outfit-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/outfit-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/outfit-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/ibm-plex-sans-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/ibm-plex-sans-latin-600-normal.woff2') format('woff2')}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%}
body{margin:0;background:#ffffff}
html{scroll-behavior:smooth}
a{color:#00759f}a:hover{color:#0b1b2b}
.bn-bar{transform-origin:bottom;animation:bnBar 4s ease-in-out infinite}
.bn-d2{animation-duration:7s;animation-delay:-1.5s}
.bn-d3{animation-duration:5.5s;animation-delay:-3s}
.bn-d4{animation-duration:6.5s;animation-delay:-4.5s}
.bn-dot{transform-box:fill-box;transform-origin:center;animation:bnFloat 6s ease-in-out infinite}
.bn-halo{transform-box:fill-box;transform-origin:center;animation:bnHalo 4s ease-in-out infinite}
.bn-line{animation:bnDash 2.6s linear infinite}
.bn-live{animation:bnPulse 2.4s ease-in-out infinite}
.bn-p1{animation:bnDrift1 16s ease-in-out infinite}
.bn-p2{animation:bnDrift2 19s ease-in-out infinite}
.bn-p3{animation:bnDrift3 22s ease-in-out infinite}
.bn-p4{animation:bnDrift4 18s ease-in-out infinite}
.bn-p{position:absolute;border-radius:50%;background:#00b4e7;opacity:.3}
@keyframes bnBar{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.86)}}
@keyframes bnDash{to{stroke-dashoffset:-26}}
@keyframes bnDrift1{0%,100%{transform:translate(0,0);opacity:.15}50%{transform:translate(34px,-40px);opacity:.55}}
@keyframes bnDrift2{0%,100%{transform:translate(0,0);opacity:.4}50%{transform:translate(-38px,28px);opacity:.12}}
@keyframes bnDrift3{0%,100%{transform:translate(0,0);opacity:.2}33%{transform:translate(-22px,-30px);opacity:.5}66%{transform:translate(18px,-12px);opacity:.3}}
@keyframes bnDrift4{0%,100%{transform:translate(0,0);opacity:.35}50%{transform:translate(26px,34px);opacity:.1}}
@keyframes bnFloat{0%,100%{transform:translate(0,0)}25%{transform:translate(2px,-4px)}50%{transform:translate(-1px,-6px)}75%{transform:translate(-3px,-2px)}}
@keyframes bnHalo{0%,100%{transform:scale(1);opacity:.15}50%{transform:scale(1.4);opacity:.35}}
@keyframes bnPulse{0%,100%{box-shadow:0 0 0 0 rgba(0,180,231,.55)}50%{box-shadow:0 0 0 5px rgba(0,180,231,0)}}
@media (max-width: 520px){.bn-hide-sm{display:none !important}}
@media (max-width: 860px){.bn-hero-scrim{background:rgba(11,27,43,0.82) !important}}
@media (max-width: 860px){.bn-sticky{position:static !important}section[id]{scroll-margin-top:0}}
@media (max-width: 860px){.bn-sticky{position:static !important}}
@media (min-width: 900px){.bn-award{position:absolute;right:calc(min(0px, (1200px - 100vw) / 2) + 32px);bottom:64px;width:228px;background:rgba(11,27,43,0.45) !important}}
@media (prefers-reduced-motion: reduce){.bn-p,.bn-dot,.bn-halo,.bn-line,.bn-live,.bn-bar{animation:none}}
[id]{scroll-margin-top:96px}
input,textarea{font:inherit}
li::marker{color:#00b4e7}
section[id],[id="top"]{scroll-margin-top:118px}
.skip-link{position:absolute;left:-9999px;top:0;background:#00b4e7;color:#0b1b2b;padding:10px 16px;z-index:10;font-weight:600}
.skip-link:focus{left:16px;top:16px}
:focus-visible{outline:3px solid #00b4e7;outline-offset:2px}
