/* Shared accessibility and responsive corrections. */
body{overflow-wrap:break-word}
:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.dark :focus-visible,.story :focus-visible,.closing :focus-visible,.student :focus-visible,.footer :focus-visible{outline-color:var(--lime)}
.skip:focus{color:var(--ink);outline-color:var(--ink)}
.brand-dot{color:var(--lime)}
.brand{flex-shrink:0}
.site-header{position:relative;z-index:5}
.nav{gap:24px}
.desktop-nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}
.desktop-nav a{text-decoration:none;color:#d6dceb;padding:14px 0}
.desktop-nav a:hover{text-decoration:underline;text-underline-offset:6px;color:#fff}
.nav-account{display:flex;align-items:center;gap:22px;flex-shrink:0}
.login-link{font-size:13px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.nav-signup{padding:13px 18px}
.mobile-menu{display:none}
.hero-footer{left:4vw;right:4vw}
.screen,.study-row>div,.assignment>div,.section-head>div{min-width:0}
.assignment{gap:10px}
.screen-top{gap:12px}
.footer nav{flex-wrap:wrap;gap:10px 24px}
.footer nav a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:1050px){
 .desktop-nav{display:none}
 .nav-account{margin-left:auto}
 .mobile-menu{display:block}
 .mobile-menu summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;font-weight:700}
 .mobile-menu summary::-webkit-details-marker{display:none}
 .mobile-menu[open] summary span{transform:rotate(45deg)}
 .mobile-menu nav{position:absolute;top:calc(100% - 1px);left:0;right:0;background:var(--ink);padding:14px 4vw 24px;border-bottom:1px solid #8291a8;box-shadow:0 15px 25px #07152e22;display:grid;gap:4px}
 .mobile-menu nav a{padding:14px 12px;text-decoration:none;border-radius:4px;font-size:15px}
 .mobile-menu nav a:hover{background:#14294a}
}
@media(max-width:480px){
 .nav{gap:16px}.nav-account{gap:0}.nav-signup{display:none}
 .hero h1{font-size:clamp(48px,14vw,58px)}
 .hero-content{padding-top:50px;padding-bottom:320px}
 .hero:before{background:linear-gradient(180deg,#07152e 0%,#07152e 61%,rgba(7,21,46,.88) 71%,rgba(7,21,46,.12) 89%),url('hero.png') 67% bottom / auto 48% no-repeat}
 .hero-footer{left:20px;right:20px;line-height:1.6;max-width:240px}
 .eyebrow{line-height:1.6}.eyebrow:before{flex-shrink:0}
 .product-visual{padding:20px 14px}
 .screen{transform:none}.screen-top{flex-wrap:wrap}.study-row{flex-direction:column}
 .screen-label,.sample{font-size:11px;line-height:1.5}
 .assignment .arrow{display:none}.assignment .icon{padding:8px}.assignment strong{line-height:1.4}
}
