.series-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 4vw, 48px); max-width: 1180px; }
.series-block { padding: clamp(24px, 4vw, 38px); border-top: 5px solid var(--fresh); background: #f8fbf9; }
.series-block:nth-child(even) { border-top-color: var(--lime); }
.series-block header span, .series-grid span, .personalized-stages span { color: var(--green); font-family: "Nunito", sans-serif; font-size: 13px; font-weight: 900; }
.series-block header h3 { margin-top: 8px; }
.topic-list { display: grid; gap: 9px; margin: 22px 0 0; padding-left: 26px; }
.topic-list li { padding-left: 4px; color: var(--muted); font-weight: 700; }
.series-grid, .personalized-stages { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; max-width: 1180px; }
.series-grid article, .personalized-stages article { padding: 26px; border-top: 4px solid var(--fresh); background: #f8fbf9; }
.series-grid article:nth-child(even), .personalized-stages article:nth-child(even) { border-top-color: var(--lime); }
.series-grid h3, .personalized-stages h3 { margin: 8px 0; }
.series-grid p, .personalized-stages p { margin: 0; color: var(--muted); }
.course-difference { max-width: 1180px; margin-top: 28px; padding: 22px 26px; border-left: 7px solid var(--lime); background: var(--mint); }
.course-difference strong { color: var(--ink); font-size: 19px; }
.course-difference p { margin: 6px 0 0; color: var(--muted); }
.matrix-intro { background: #f6fff9; }
.matrix-intro__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(30px, 6vw, 82px); max-width: 1120px; }
.matrix-intro__grid p { color: var(--muted); font-size: 17px; }
.matrix-intro__grid .lead { color: var(--ink); font-size: 21px; font-weight: 900; }
.matrix-flow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; max-width: 1180px; }
.matrix-flow span { padding: 18px 10px; border-top: 3px solid var(--fresh); background: var(--mint); color: var(--ink); font-weight: 900; text-align: center; }
.matrix-flow span:nth-child(even) { border-top-color: var(--lime); background: #f8fbf9; }
@media (max-width: 960px) { .series-stack, .matrix-intro__grid { grid-template-columns: 1fr; } .matrix-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .series-grid, .personalized-stages, .matrix-flow { grid-template-columns: 1fr; } .series-block, .series-grid article, .personalized-stages article { padding: 22px 18px; } }
