[hidden]{display:none!important}.skip-link{position:absolute;left:1rem;top:-5rem;padding:.75rem;background:white;z-index:10}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid var(--bsl-cobalt);outline-offset:5px}.portal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;padding-bottom:1.5rem}.portal-header>a:last-child{font-size:.9rem}.portal-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:center;padding:3rem 0}.portal-sky{position:relative;overflow:hidden;background:var(--grad-sky,linear-gradient(180deg,#A9D8FF 0%,#D9E5EE 55%,#FFF7EB 100%));padding-bottom:96px}.portal-sky .portal-hero{position:relative;z-index:1}.eyebrow{font-size:.72rem;letter-spacing:.1em;font-weight:600;color:var(--bsl-slate);margin-bottom:.7rem}.portal-hero h1{font-size:clamp(2.7rem,5.5vw,4.4rem)}.intro{font-size:1.15rem;max-width:31rem;margin-top:1.25rem}.access-card{background:var(--bsl-ivory);border-radius:24px;padding:2rem;box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 10px 28px rgba(16,35,68,.12)}.status{display:inline-block;background:var(--bsl-mist);color:var(--bsl-ink);border-radius:6px;font-size:.68rem;letter-spacing:.06em;font-weight:600;padding:.35rem .6rem;margin-bottom:1rem}.access-card h2{font-family:var(--bsl-display);font-size:1.8rem}.access-card p{margin:.75rem 0}.access-card .btn{margin-top:.5rem}.small{font-size:.85rem;color:var(--bsl-slate)}.portal-nav{display:flex;gap:1.5rem;flex-wrap:wrap;border-block:1px solid var(--bsl-paperblue);padding:1rem 0;font-size:.9rem}.portal-nav a{text-decoration:none;font-weight:600}.section-intro{max-width:47rem;margin:1rem 0 2rem;color:var(--bsl-slate)}.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.library-card{background:white;border:1px solid var(--bsl-mist);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.card-art{height:165px;display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem}.card-art span{font-size:.68rem;font-weight:600;letter-spacing:.08em;max-width:6rem}.blue{background:var(--bsl-sky)}.peach{background:var(--bsl-peach)}.mist{background:var(--bsl-mist)}.card-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}.card-body h3{font-family:var(--bsl-display);line-height:1.2;margin-bottom:.8rem}.card-body p:not(.eyebrow){margin-bottom:1rem}.tools{font-size:.82rem;color:var(--bsl-slate);margin-top:auto;padding-top:1rem}.course-link{font-weight:600;margin-bottom:.5rem}.course-state{border-top:1px solid var(--bsl-mist);padding-top:1rem;margin-bottom:0!important}.download-note{margin-top:1.5rem;padding:1.5rem;border-left:4px solid var(--bsl-tangerine);background:#fff}.download-note h3{font-size:1.05rem;margin-bottom:.5rem}.next-step{border-radius:24px;background:var(--bsl-mist);padding:2.5rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem}.next-step p:not(.eyebrow){margin-top:1rem}.checklist{background:white;border-radius:16px;padding:1.5rem}.checklist label{display:flex;align-items:flex-start;gap:.7rem;padding:.85rem 0;border-bottom:1px solid var(--bsl-mist);cursor:pointer}.checklist input{width:1.2rem;height:1.2rem;flex-shrink:0;margin-top:.15rem;accent-color:var(--bsl-cobalt)}.checklist progress{width:100%;height:.7rem;accent-color:var(--bsl-cobalt);margin:.65rem 0}.checklist button{color:var(--bsl-cobalt);text-decoration:underline;font-size:.85rem;margin-top:1.2rem}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem;margin-top:1.5rem;align-items:start}.help-grid details{border-bottom:1px solid var(--bsl-paperblue);padding:1.1rem 0}.help-grid summary{cursor:pointer;font-weight:600;list-style:revert}.help-grid details p{margin-top:.8rem;color:var(--bsl-slate)}.portal-footer .container{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem;font-size:.8rem;padding-top:1.5rem;padding-bottom:1.5rem}section{scroll-margin-top:1rem}@media(max-width:760px){.portal-hero{grid-template-columns:1fr;gap:2rem;padding:2rem 0}.library-grid{grid-template-columns:1fr}.card-art{height:125px;justify-content:flex-start}.next-step{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem}.help-grid{grid-template-columns:1fr}.portal-nav{gap:1rem}.portal-header img{width:170px;height:auto}.portal-header>a:last-child{max-width:7rem;text-align:right}.access-card{padding:1.5rem}.portal-footer .container{flex-direction:column;align-items:flex-start}}
/* Allow long sign-in labels to wrap on narrow phones. */
.portal-hero > *, .next-step > * { min-width: 0; }
.access-card .btn { white-space: normal; text-align: center; }
.portal-footer .spark:nth-of-type(1) { --x: 8%; --y: 30%; --s: 14px; }
.portal-footer .spark:nth-of-type(2) { --x: 90%; --y: 22%; --s: 11px; --d: 1.8s; }
@media (max-width: 599px) { .portal-footer .spark:nth-of-type(1) { display: none; } }
