@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,400;1,700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap);:root{--forest:#1B4332;--amber:#D4A843;--amber-text:#A07B2E;--sage:#52796F;--cream:#FAFAF5;--white:#FFFFFF;--charcoal:#1A1A2E;--slate:#6B7280;--mist:#E8E5E0;--soft-green:#E8F5E9;--warm-yellow:#FFF8E1;--link:#2D6A4F;--link-visited:#5A4B7A;--serif:'Playfair Display', serif;--sans:'Inter', sans-serif;--mono:'JetBrains Mono', ui-monospace, monospace;--content:720px}.wrap{max-width:var(--content);margin:0 auto;padding:28px 20px 80px}.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:13px;color:var(--slate);margin-bottom:30px}.crumbs a{color:var(--slate);text-decoration:none;transition:color 0.15s}.crumbs a:hover{color:var(--forest)}.crumbs a:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:2px}.crumbs .sep{color:var(--mist)}.crumbs .here{color:var(--charcoal);font-weight:500}h1.term{font-family:var(--serif);font-weight:700;font-size:clamp(38px, 7vw, 58px);line-height:1.04;letter-spacing:-.02em;color:var(--charcoal);margin:0 0 0 0}.term-sci{font-family:var(--serif);font-style:italic;font-size:clamp(16px, 3vw, 19px);color:var(--slate);margin-top:8px}.quickdef{position:relative;margin:30px 0 0 0;padding:28px 30px 28px 34px;background:var(--forest);color:#F4F1E8;border-radius:16px;overflow:hidden}.quickdef::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--amber)}.quickdef .qlabel{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin-bottom:12px}.quickdef p{font-family:var(--serif);font-size:clamp(19px, 3.4vw, 23px);line-height:1.5;font-weight:400;color:#F7F4EC;margin:0}.section{margin-top:48px}.section>h2{font-family:var(--serif);font-weight:700;font-size:clamp(22px, 4vw, 27px);line-height:1.2;letter-spacing:-.01em;color:var(--charcoal);margin-bottom:18px}.prose p{font-size:17px;line-height:1.75;color:var(--charcoal);margin-bottom:16px;max-width:64ch}.prose p:last-child{margin-bottom:0}.softcall{background:var(--warm-yellow);border:1px solid #F0E2B8;border-radius:14px;padding:24px 26px}.softcall p{font-size:16px;line-height:1.7;color:#5C4A1F;margin:0}.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}.listcard{background:var(--white);border:1px solid var(--mist);border-radius:14px;padding:22px 24px}.listcard h3{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--sage);margin-bottom:16px;margin-top:0}.listcard ul{list-style:none;display:flex;flex-direction:column;gap:13px;padding:0;margin:0}.listcard li{position:relative;padding-left:22px;font-size:15px;line-height:1.55;color:var(--charcoal)}.listcard li::before{content:'';position:absolute;left:3px;top:9px;width:6px;height:6px;border-radius:2px;background:var(--amber);transform:rotate(45deg)}a.tlink{color:var(--link);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-color 0.15s,color 0.15s}a.tlink:hover{border-bottom-color:currentColor}a.tlink:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:2px}a.tlink:visited{color:var(--link-visited)}.linkcols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.termbox{background:var(--white);border:1px solid var(--mist);border-radius:14px;padding:22px 24px}.termbox.prereq{background:var(--soft-green);border-color:#CCE4CF}.termbox .th{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--forest);margin-bottom:14px;margin-top:0}.termchips{display:flex;flex-direction:column}.termchips a{display:block;padding:11px 0;font-size:15.5px;font-weight:500;color:var(--charcoal);text-decoration:none;border-top:1px solid rgba(27,67,50,.08);transition:color 0.15s,padding-left 0.15s}.termbox.prereq .termchips a{border-top-color:rgba(27,67,50,.12)}.termchips a:first-child{border-top:0}.termchips a:hover{color:var(--forest);padding-left:5px}.termchips a:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:4px}@media (max-width:680px){.wrap{padding:22px 18px 64px}.crumbs{margin-bottom:22px;font-size:12px}.crumbs .here{display:none}.quickdef{padding:24px 22px 24px 26px}.duo,.linkcols{grid-template-columns:1fr}}