.gi-matrices{margin:26px 0 40px}.gi-matrix-course{border:1px solid #d7e5d2;border-radius:20px;background:#fff;padding:clamp(18px,3vw,30px);margin:20px 0}.gi-matrix-kicker{font-size:12px;color:#4a7556;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.gi-matrix-title h3{margin:7px 0;color:#1f4b33;font-size:clamp(1.3rem,2.5vw,1.85rem)}.gi-matrix-title p{line-height:1.6;max-width:900px}.gi-matrix-source{display:inline-flex;color:#205f38;background:#e9f4e6;border:1px solid #b7d2b2;border-radius:9px;padding:10px 14px;margin:8px 0 16px;font-weight:650;text-decoration:none}.gi-matrix-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:14px}.gi-matrix-term{border:1px solid #dfe9dd;border-radius:14px;background:#fbfdf9;overflow:hidden;min-width:0}.gi-matrix-term h4{margin:0;background:#e9f3e6;padding:14px;font-size:1.05rem;color:#285539;display:flex;align-items:center;justify-content:space-between;gap:8px}.gi-matrix-hours{font-size:12px;font-weight:650;white-space:nowrap}.gi-matrix-disciplines{padding:3px 14px}.gi-matrix-subject{padding:10px 0;display:flex;align-items:start;justify-content:space-between;gap:12px;line-height:1.4;border-bottom:1px solid #e5eee4}.gi-matrix-subject:last-child{border:0}.gi-matrix-subject span{min-width:0;overflow-wrap:anywhere}.gi-matrix-subject small{font-size:12px;color:#4b6754;white-space:nowrap}.gi-matrix-axes{margin-top:24px}.gi-matrix-axes h4{margin:0 0 12px;color:#24543b}.gi-axis-pills{display:flex;flex-wrap:wrap;gap:8px}.gi-axis-pills span{padding:7px 11px;background:#f0f6ec;border:1px solid #d3e4cf;border-radius:999px;font-size:13px;color:#2b5b3c}.gi-matrix-note{font-size:13px;color:#5c6b60}.gi-matrix-optatives{margin-top:20px}.gi-matrix-optatives summary{cursor:pointer;font-weight:650;padding:12px 0}.gi-matrix-optatives .gi-axis-pills{margin-top:12px}.gi-matrix-source:focus-visible,.gi-matrix-optatives summary:focus-visible{outline:3px solid #247145;outline-offset:3px}@media(max-width:600px){.gi-matrix-course{padding:16px}.gi-matrix-grid{grid-template-columns:1fr}.gi-matrix-subject{gap:9px}}
