:root{--blue: #002676;--blue-dark: #010133;--gold: #fdb515;--ink: #1a1a1a;--muted: #4a4a4a;--line: #d9d9d9;--bg: #ffffff;--max: 72rem;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}*{box-sizing:border-box}body{margin:0}img{max-width:100%;height:auto}a{color:var(--blue);text-underline-offset:2px}a:hover{color:var(--blue-dark)}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.wrap{max-width:var(--max);margin:0 auto;padding:0 1rem}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--gold);color:var(--blue-dark);padding:.5rem 1rem;z-index:10}.site-header{background:var(--blue);color:#fff;border-bottom:4px solid var(--gold)}.header-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-block:.9rem}.brand{color:#fff;text-decoration:none;display:flex;flex-direction:column}.brand:hover{color:#fff}.brand-mark{font-size:1.6rem;font-weight:800;letter-spacing:.02em}.brand-sub{font-size:.8rem;opacity:.9}.nav{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem;margin:0;padding:0}.nav>li{position:relative}.nav a,.nav summary{color:#fff;text-decoration:none;padding:.45rem .7rem;display:block;border-radius:4px;cursor:pointer;font-weight:500}.nav summary{list-style:none}.nav summary::-webkit-details-marker{display:none}.nav summary:after{content:" ▾";font-size:.75em}.nav a:hover,.nav summary:hover,.nav a[aria-current],.nav summary.active{background:#ffffff1f}.nav details ul{list-style:none;margin:0;padding:.35rem;position:absolute;right:0;top:100%;min-width:14rem;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #00000026;z-index:5}.nav details ul a{color:var(--blue)}.nav details ul a:hover,.nav details ul a[aria-current]{background:#eef1f8}.content{padding-block:2rem 4rem}.content h1{color:var(--blue);font-size:2.2rem;line-height:1.2;margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:3px solid var(--gold)}.content h2{color:var(--blue);margin-top:2.25rem}.content h3{color:var(--blue-dark)}.content p,.content li{max-width:75ch}.content img{display:block;margin:1rem 0;border-radius:4px}.content table{border-collapse:collapse;width:100%}.content td,.content th{border:1px solid var(--line);padding:.5rem;vertical-align:top}.content iframe{max-width:100%;aspect-ratio:16/9;width:40rem;height:auto;border:0}.site-footer{background:var(--blue-dark);color:#e6e6e6;padding-block:1.5rem;font-size:.9rem}.site-footer a{color:var(--gold)}@media(max-width:720px){.content h1{font-size:1.7rem}.nav details ul{left:0;right:auto}}.content img.lead{max-width:28rem;margin:0 auto 2rem}.toc{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:1rem}.roster-grid{display:grid;gap:1.5rem}.person{display:grid;grid-template-columns:160px 1fr;gap:1.25rem;align-items:start;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.person>div:only-child{grid-column:1 / -1}.person img{width:160px;margin:0}.person h3{margin:0 0 .25rem}.person p{margin:.35rem 0}.person .role{font-weight:400}.count{font-weight:400;color:var(--muted);font-size:.8em}.pubs li{margin-bottom:.75rem;max-width:80ch}.pubs a{color:inherit;text-decoration-color:var(--blue)}.pubs a:hover{color:var(--blue)}.updates{list-style:none;padding:0}.updates li{padding:.6rem 0;border-bottom:1px solid var(--line);max-width:80ch}.updates .date{color:var(--blue);display:block}@media(max-width:560px){.person{grid-template-columns:1fr}.person img{width:140px}}.cards{list-style:none;padding:0;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.card{border:1px solid var(--line);border-radius:6px;overflow:hidden;position:relative}.card img{margin:0;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:0}.card h2{font-size:1.15rem;margin:.9rem 1rem .4rem}.card h2 a{text-decoration:none}.card h2 a:after{content:"";position:absolute;inset:0}.card:hover{border-color:var(--blue)}.card p{margin:0 1rem 1rem;color:var(--muted)}.content img:not(.card img):not(.person img):not(.slide img){max-width:min(100%,40rem);max-height:30rem;width:auto;height:auto;object-fit:contain}.carousel{max-width:36rem;margin:0 auto 2rem}.carousel-slides{aspect-ratio:4 / 3;background:#fff}.slide{margin:0;height:100%}.slide img{width:100%;height:100%;object-fit:contain;margin:0}.carousel-controls{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem}.carousel-controls button{min-width:2.75rem;min-height:2.75rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--blue);font-size:1.1rem;cursor:pointer}.carousel-controls button:hover,.carousel-controls button:focus-visible{border-color:var(--blue)}.carousel-count{color:var(--muted);min-width:3.5rem;text-align:center}.home-grid{display:grid;grid-template-columns:1fr 14rem;gap:2.5rem;align-items:start}.home-links{position:sticky;top:1rem;border-left:3px solid var(--gold);padding-left:1.25rem}.home-links h2{margin-top:0;font-size:1.2rem}.home-links ul{list-style:none;padding:0;margin:0}.home-links li{margin:.5rem 0}@media(max-width:860px){.home-grid{grid-template-columns:1fr}.home-links{position:static}}.course-list{list-style:none;padding:0}.course-list li{padding:.35rem 0;border-bottom:1px solid var(--line)}.course-list .term{display:inline-block;min-width:7.5rem;color:var(--blue);font-weight:600}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
