@charset "UTF-8";
.curriculum-section{background:#f4f7fd}
.curriculum-intro{display:flex;justify-content:space-between;align-items:center;gap:48px}
.curriculum-aim{font-size:1rem;line-height:1.95;color:#526078;margin-top:22px}
.curriculum-facts{flex-shrink:0;min-width:285px;padding:24px 30px;border-left:1px solid #d5deef}
.curriculum-facts>p{display:flex;gap:36px;align-items:baseline;margin-bottom:12px}
.curriculum-facts strong{font-size:2.75rem;font-weight:600;color:#6442c8;line-height:1.2;letter-spacing:-.04em}
.curriculum-facts strong>span{font-size:.875rem;font-weight:500;letter-spacing:0;margin-left:5px}
.curriculum-facts>span{font-size:.8125rem;line-height:1.8;color:#65708a}
.curriculum-conditions{font-size:.75rem;line-height:1.9;color:#69768d;margin-top:28px}
.curriculum-phase-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.curriculum-phase-nav a{display:flex;align-items:center;gap:16px;padding:16px 22px;background:#fff;border:1px solid #d7e0ee;border-radius:6px;text-decoration:none;transition:background .2s,border-color .2s}
.curriculum-phase-nav a:hover{background:#eee9fc;border-color:#b8a5ec}
.curriculum-phase-nav a>span{color:#6140bd;font-size:.9375rem;font-weight:650}
.curriculum-phase-nav a>b{font-size:.75rem;color:#727c91;font-weight:500;flex:1}
.curriculum-phase-nav a>svg{width:16px;height:16px;color:#795ecc;flex-shrink:0}
.curriculum-phase-nav a:focus-visible,.curriculum-expand:focus-visible{outline:2px solid var(--purple);outline-offset:4px}
.curriculum-detail-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:26px 0 48px}
.curriculum-detail-controls>p{font-size:.75rem;line-height:1.9;color:#6c778c}
.curriculum-expand{border:0;background:none;padding:10px 0;color:#6140bd;font-size:.8125rem;font-weight:600;text-decoration:underline;text-underline-offset:5px;cursor:pointer;white-space:nowrap;flex-shrink:0}
.curriculum-expand[hidden]{display:none}
.curriculum-phase{scroll-margin-top:115px}
.curriculum-phase+.curriculum-phase{margin-top:44px}
.curriculum-phase-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}
.curriculum-phase-heading h3{font-size:1.125rem;font-weight:650;line-height:1.85;display:flex;gap:16px;align-items:baseline;color:#37425b}
.curriculum-phase-heading h3>span{color:#6742bd;font-size:.8125rem;flex-shrink:0;font-weight:600}
.curriculum-phase-heading>p{font-size:.75rem;color:#6e798d;white-space:nowrap}
.course-session-list{list-style:none;margin:0;padding:0;border:1px solid #d9e2ef;border-radius:8px;overflow:hidden;background:#fff}
.course-session-list>li+li{border-top:1px solid #dde5f0}
.course-session{scroll-margin-top:110px}
.course-session>summary{list-style:none;display:grid;grid-template-columns:60px 1fr 26px;gap:24px;align-items:start;cursor:pointer;padding:26px 30px;transition:background .2s}
.course-session>summary::-webkit-details-marker{display:none}
.course-session>summary:hover{background:#f7f9fe}
.course-session>summary:focus-visible{outline:2px solid var(--purple);outline-offset:-4px;background:#f5f1fd}
.session-number{font-size:.8125rem;color:#69768e;font-variant-numeric:tabular-nums;font-weight:600;padding-top:26px}
.session-summary{display:block;min-width:0}
.session-format{font-size:.6875rem;font-weight:600;color:#68758f;line-height:1.6;display:block;margin-bottom:8px;letter-spacing:.04em}
.session-presentation .session-format{color:#7150c7}
.session-title{display:block;font-size:1.1875rem;font-weight:650;line-height:1.75;color:var(--ink)}
.session-purpose{display:flex;gap:12px;margin-top:14px;font-size:.875rem;line-height:1.9;color:#5f6a80}
.session-purpose>b{font-size:.6875rem;flex-shrink:0;font-weight:600;color:#7352c5;margin-top:3px}
.session-mark{position:relative;width:26px;height:26px;border:1px solid #dce3ee;border-radius:50%;margin-top:24px;flex-shrink:0}
.session-mark:before,.session-mark:after{content:"";position:absolute;background:#7b61c8;left:7px;top:12px;width:10px;height:1px}
.session-mark:after{transform:rotate(90deg)}
.course-session[open] .session-mark:after{transform:rotate(0)}
.course-session[open]>summary{background:#f8f6fe}
.session-content{padding:0 80px 30px 114px;background:#f8f6fe;display:grid;grid-template-columns:.8fr 1.2fr;gap:36px}
.session-content-single{grid-template-columns:1fr}
.session-content h4{font-size:.75rem;color:#6b4ab8;font-weight:650;margin-bottom:14px}
.session-overview p,.session-components li p{font-size:.875rem;line-height:1.95;color:#4e5a71}
.session-components ul{list-style:none;padding:0;margin:0}
.session-components li{display:grid;grid-template-columns:85px 1fr;gap:12px;align-items:baseline}
.session-components li+li{margin-top:13px}
.session-components li>span{font-size:.6875rem;color:#6b768d;line-height:1.8;font-weight:600}
@media(max-width:1100px){
 .curriculum-phase-nav{gap:12px}.curriculum-phase-nav a{padding:14px 16px;gap:10px}
 .curriculum-intro{gap:32px}.curriculum-facts{min-width:240px;padding-left:26px;padding-right:0}
 .session-content{grid-template-columns:1fr;gap:25px;padding-right:60px}
}
@media(max-width:760px){
 .curriculum-intro{display:block}.curriculum-aim{font-size:.9375rem}.curriculum-aim br{display:none}
 .curriculum-intro .section-title{font-size:1.75rem}
 .curriculum-facts{border-left:0;border-top:1px solid #d5deef;padding:24px 0 0;margin-top:26px;min-width:0}.curriculum-facts>p{gap:30px}.curriculum-facts strong{font-size:2.25rem}
 .curriculum-conditions{font-size:.6875rem;margin-top:22px}
 .curriculum-phase-nav{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:26px}.curriculum-phase-nav a{padding:14px;gap:9px}.curriculum-phase-nav a>span{font-size:.8125rem}.curriculum-phase-nav a>b{font-size:.6875rem}.curriculum-phase-nav a>svg{width:13px;height:13px}
 .curriculum-detail-controls{flex-direction:column;align-items:flex-start;gap:9px;margin:20px 0 36px}.curriculum-detail-controls>p{font-size:.6875rem}.curriculum-expand{font-size:.75rem}
 .curriculum-phase{scroll-margin-top:90px}.curriculum-phase-heading{gap:12px;align-items:flex-start}.curriculum-phase-heading h3{font-size:1rem;gap:10px;flex:1}.curriculum-phase-heading h3>span{font-size:.6875rem}.curriculum-phase-heading>p{font-size:.625rem;padding-top:4px}
 .course-session>summary{padding:22px 18px;grid-template-columns:1fr 26px;gap:12px;position:relative}
 .session-number{font-size:.75rem;padding:0;grid-column:1;grid-row:1;margin-bottom:4px}.session-summary{grid-column:1;grid-row:2}
 .session-format{margin-bottom:8px}.session-title{font-size:1.0625rem;line-height:1.75}.session-purpose{font-size:.875rem;gap:9px;margin-top:12px}.session-purpose>b{font-size:.625rem}
 .session-mark{grid-column:2;grid-row:2;margin-top:22px}
 .session-content{display:block;padding:0 22px 26px}.session-content h4{font-size:.6875rem;margin-bottom:10px}.session-overview p,.session-components li p{font-size:.875rem;line-height:1.95}
 .session-components{margin-top:22px}.session-components li{grid-template-columns:1fr;gap:4px}.session-components li+li{margin-top:14px}.session-components li>span{font-size:.6875rem}
}
@media(prefers-reduced-motion:reduce){.curriculum-phase-nav a,.course-session>summary{transition:none}}

.curriculum-phase-heading .curriculum-overview-title{display:block}
.curriculum-phase-heading .curriculum-overview-title>span{display:inline-block;font:inherit;color:inherit;white-space:nowrap}
