header.page{padding:40px 0 56px;border-bottom:1px solid var(--rule)}.h-grid{display:grid;grid-template-columns:1fr 320px;gap:56px;align-items:end}.h-tag{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}header.page h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,6vw,80px);line-height:.98;letter-spacing:-.025em;max-width:14ch}header.page h1 em{font-style:italic;font-weight:300;color:var(--accent)}.h-deck{margin-top:22px;font-family:var(--serif);font-style:italic;font-weight:300;font-size:19px;color:var(--muted);max-width:56ch;line-height:1.45}.degree-card{background:var(--paper-2);border:1px solid var(--rule);padding:28px 26px}.degree-card .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.degree-card dl{display:flex;flex-direction:column;gap:12px}.degree-card dt{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.degree-card dd{font-family:var(--serif);font-size:16px;font-weight:500;line-height:1.3}.degree-card dd .sub{font-style:italic;font-weight:300;color:var(--muted);font-size:14px;display:block;margin-top:1px}.filters{padding:28px 0 24px;border-bottom:1px solid rgba(26,31,26,.15);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.filter-pills{display:flex;gap:6px;flex-wrap:wrap}.pill{font-family:var(--mono);font-size:11px;letter-spacing:.04em;padding:6px 12px;border:1px solid rgba(26,31,26,.25);background:transparent;color:var(--ink);cursor:pointer;transition:all .15s;user-select:none}.pill:hover{border-color:var(--ink)}.pill.active{background:var(--accent);color:var(--paper);border-color:var(--accent)}.filter-meta{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--muted)}.filter-meta .count{color:var(--accent);font-weight:500}.courses-wrap{padding:8px 0 80px}.term-block{margin-top:48px}.term-head{display:grid;grid-template-columns:180px 1fr;gap:48px;align-items:baseline;padding-bottom:18px;margin-bottom:0}.term-tag{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--accent);border-top:2px solid var(--accent);padding-top:10px;text-transform:uppercase}.term-h{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.015em;line-height:1.15;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.term-h .meta{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.courses{display:flex;flex-direction:column}.course{display:grid;grid-template-columns:180px 1fr 160px;gap:48px;padding:28px 0;border-top:1px solid rgba(26,31,26,.12);text-decoration:none;color:var(--ink);transition:all .25s ease;position:relative;align-items:baseline}.course:last-child{border-bottom:1px solid rgba(26,31,26,.12)}.course:after{content:"↗";position:absolute;right:0;top:32px;font-family:var(--mono);font-size:16px;color:var(--muted);opacity:0;transition:all .25s}.course:hover{padding-left:12px;background:linear-gradient(90deg,rgba(31,77,63,.04),transparent 70%)}.course:hover:after{opacity:1;color:var(--accent)}.course:hover .c-title{color:var(--accent)}.c-code{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.05em}.c-code .no-page-label{display:inline-block;margin-top:6px;color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-style:italic}.course.no-page{cursor:default}.course.no-page:hover{padding-left:0;background:none}.course.no-page:hover .c-title{color:var(--ink)}.course.no-page:after{display:none}.c-body{display:flex;flex-direction:column;gap:8px}.c-title{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.2;letter-spacing:-.015em;transition:color .2s}.c-deck{font-family:var(--serif);font-style:italic;font-weight:300;font-size:15px;color:var(--muted);max-width:56ch;line-height:1.45}.c-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.c-tag{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.04em}.c-tag:after{content:" ·";margin-left:3px}.c-tag:last-child:after{content:""}.c-meta{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right;line-height:1.7}.c-meta .grade{color:var(--ink);font-weight:500}.c-meta .deliv{display:block;margin-top:6px;font-style:italic;text-transform:none;letter-spacing:0;font-family:var(--serif);font-size:13px}.course.hidden,.term-block.empty{display:none}.summary{margin-top:80px;padding:48px 56px;background:var(--ink);color:var(--paper);position:relative}.summary:before{content:"IN AGGREGATE";position:absolute;top:14px;left:56px;font-family:var(--mono);font-size:10px;letter-spacing:.15em;color:var(--accent)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:28px}.summary .stat .num{font-family:var(--serif);font-weight:300;font-size:56px;line-height:1;letter-spacing:-.04em;color:var(--paper)}.summary .stat .num .unit{font-size:22px;color:#fff9;margin-left:4px}.summary .stat .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;margin-top:10px;line-height:1.4}@media(max-width:880px){.h-grid{grid-template-columns:1fr;gap:32px}.term-head{grid-template-columns:1fr;gap:8px}.course{grid-template-columns:1fr;gap:12px;padding-right:24px}.c-meta{text-align:left}.course:after{display:none}.summary{padding:36px 28px}.summary-grid{grid-template-columns:1fr 1fr;gap:20px}.summary .stat .num{font-size:42px}}
