/* Course family only. Loaded after modern-site.css by the course generator. */
.course-page{--course-muted:#c8d6e1;--course-line:rgba(255,255,255,.2);--course-surface:#14364e}
.course-page main{min-width:0}
.course-page .course-section{box-sizing:border-box;width:min(1180px,calc(100% - 64px));margin-inline:auto}
.course-page .course-section *{box-sizing:border-box;min-width:0}
.course-page .course-section :is(p,li,dd){font-size:16px;line-height:1.6}
.course-page .course-section :is(h1,h2,h3){color:#fff;letter-spacing:-.025em;overflow-wrap:break-word}
.course-page .course-section h2{font-size:clamp(28px,3vw,38px);line-height:1.14;margin:0 0 20px}
.course-page .course-section h3{font-size:24px;line-height:1.2;margin:0 0 18px}
.course-page .course-section p{max-width:65ch;margin:0 0 18px;color:var(--course-muted)}
.course-page .course-section .course-kicker{margin:0 0 15px;color:#f8a809;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.course-page .course-section a{color:#f8a809;text-underline-offset:4px}
.course-page .course-section .button-primary{color:#07223a}
.course-page .course-section .button-secondary{color:#fff}
.course-page .course-section :is(a,button,summary,input):focus-visible{outline:3px solid #f8a809;outline-offset:4px}
.course-page .course-breadcrumb{padding-top:22px}
.course-page .course-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:0;margin:0;list-style:none}
.course-page .course-breadcrumb li{display:flex;align-items:center;font-size:14px;color:var(--course-muted);line-height:1.4}
.course-page .course-breadcrumb li+li::before{content:"/";margin-right:12px;color:#819bae}
.course-page .course-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--course-muted);font-size:14px}
.course-page .course-detail-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:56px;padding:38px 0 70px;min-height:0}
.course-page .course-detail-hero h1{max-width:21ch;margin:0 0 24px;font-size:clamp(36px,4.05vw,54px);line-height:1.06;letter-spacing:-.035em}
.course-page .course-detail-hero .course-summary{font-size:20px;line-height:1.5;margin-bottom:22px}
.course-page .course-detail-hero .course-sample-note{font-size:16px;line-height:1.55;margin-bottom:24px;max-width:54ch}
.course-page .course-detail-hero .button-row{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin:0 0 10px}
.course-page .course-detail-hero .button{font-size:16px;line-height:1.3;padding:14px 20px;text-align:center}
.course-page .course-detail-hero .course-call-note{margin-bottom:22px;font-size:14px}
.course-page .course-detail-hero .course-member-access{font-size:16px;line-height:1.5;margin:0}
.course-page .course-member-access strong{display:block;font-weight:400;color:var(--course-muted)}
.course-page .course-member-access a{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
.course-page .course-topic-map{margin:0;padding:30px;background-color:var(--course-surface);background-image:linear-gradient(145deg,rgba(255,255,255,.04),rgba(7,34,58,.08));border:1px solid var(--course-line);border-radius:26px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 50px rgba(0,10,20,.13)}
.course-page .course-topic-map h2{font-size:clamp(26px,2.5vw,33px);margin-bottom:25px}
.course-page .course-topic-track{display:grid;gap:12px;padding:0;margin:0 0 22px;list-style:none}
.course-page .course-topic-track li{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:15px;min-height:62px;padding:12px 16px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(7,34,58,.45);color:#fff;line-height:1.35}
.course-page .course-topic-number{color:#f8a809;font-size:13px;font-weight:700;letter-spacing:.04em}
.course-page .course-topic-track strong{font-size:18px;font-weight:600;overflow-wrap:anywhere}
.course-page .course-topic-map .course-topic-review{display:flex;align-items:center;gap:12px;margin:0;color:#e8f0f5;font-size:16px}
.course-page .course-topic-review>span{display:inline-grid;place-items:center;flex-shrink:0;width:26px;height:26px;border:1px solid #f8a809;border-radius:50%;color:#f8a809;font-weight:700}
.course-page .course-preparation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding:50px 0 62px;border-top:1px solid var(--course-line)}
.course-page .course-preparation h2{max-width:20ch}
.course-page .course-preparation .course-suitability{font-size:18px;color:#e4edf4}
.course-page .course-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:27px 0 24px}
.course-page .course-facts>div{border-top:1px solid var(--course-line);padding-top:12px}
.course-page .course-facts dt{color:var(--course-muted);font-size:13px;margin-bottom:6px}
.course-page .course-facts dd{margin:0;color:#fff;font-size:16px;font-weight:700;line-height:1.45}
.course-page .course-facts a{display:inline-flex;align-items:center;min-height:44px}
.course-page .course-format-note{color:#e4edf4;font-weight:700}
.course-page .course-credit{display:flex;align-items:center;gap:16px;padding-top:18px;border-top:1px solid var(--course-line)}
.course-page .course-credit img{display:block;width:96px;height:54px;flex:0 0 96px;object-fit:cover;border-radius:8px}
.course-page .course-credit p{margin:0;font-size:14px;line-height:1.5}
.course-page .course-credit p+p{margin-top:6px}
.course-page .course-fact-disclosure{border-bottom:1px solid var(--course-line);padding:0 0 8px;margin:0 0 16px}
.course-page .course-fact-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:10px 0;cursor:pointer;color:#fff;font-size:21px;font-weight:700;line-height:1.3;list-style:none}
.course-page .course-fact-disclosure summary::-webkit-details-marker{display:none}
.course-page .course-fact-disclosure summary::after{content:"";width:9px;height:9px;flex:0 0 9px;border-right:2px solid #f8a809;border-bottom:2px solid #f8a809;transform:rotate(45deg);margin-right:5px}
.course-page .course-fact-disclosure[open] summary::after{transform:rotate(225deg)}
.course-page .course-fact-disclosure ul{padding-left:22px;margin:10px 0 20px;color:var(--course-muted)}
.course-page .course-fact-disclosure li+li{margin-top:9px}
.course-page .course-prerequisites .course-membership-note{margin-top:24px;font-size:16px;line-height:1.6}
.course-page .course-curriculum{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1fr);align-items:start;gap:54px;padding:52px 0 66px;border-top:1px solid var(--course-line)}
.course-page .course-curriculum-heading p{font-size:16px}
.course-page .course-curriculum-list{gap:0}
.course-page .course-section-detail{overflow:visible;border:0;border-top:1px solid var(--course-line);border-radius:0;background:transparent}
.course-page .course-section-detail:last-child{border-bottom:1px solid var(--course-line)}
.course-page .course-section-detail summary{grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:12px;min-height:66px;padding:17px 10px;color:#fff;font-size:17px;font-weight:600;line-height:1.45}
.course-page .course-section-detail summary small{color:var(--course-muted);font-size:13px;line-height:1.4;font-weight:400}
.course-page .course-section-detail summary::after{flex-shrink:0}
.course-page .course-section-detail ol{padding:0 12px 16px}
.course-page .course-section-detail ol li{padding:13px 0;color:var(--course-muted);line-height:1.5}
.course-page .course-section-detail ol li small{font-size:13px}
.course-page .course-section-detail .course-muted{padding:0 12px 16px;margin:0}
.course-page .course-learning-use{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1fr);align-items:start;gap:54px;padding:0 0 0 26px;margin-bottom:70px;border-left:3px solid #f8a809}
.course-page .course-learning-use h2{font-size:clamp(27px,2.6vw,34px);margin-bottom:0}
.course-page .course-use-example>p{font-size:20px;max-width:60ch;margin:0}
.course-page .course-learning-close,.course-page .course-membership-support{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;padding:40px;margin-bottom:72px;background-color:var(--course-surface);background-image:linear-gradient(120deg,rgba(255,255,255,.035),rgba(7,34,58,.08));border:1px solid var(--course-line);border-radius:26px}
.course-page .course-help>p{max-width:47ch}
.course-page .course-help .button{margin-right:16px}
.course-page .course-text-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;font-weight:700;line-height:1.4}
.course-page .course-help>.course-text-link{margin-top:8px}
.course-page .course-related{border-left:1px solid var(--course-line);padding-left:36px}
.course-page .course-related ul{list-style:none;margin:0 0 10px;padding:0}
.course-page .course-related li{border-bottom:1px solid var(--course-line)}
.course-page .course-related li a{display:flex;align-items:center;min-height:48px;padding:12px 0;font-weight:600;line-height:1.45}
.course-page .course-catalogue-hero{display:block;padding:54px 0 28px}
.course-page .course-catalogue-hero h1{max-width:23ch;font-size:clamp(38px,4.4vw,58px);line-height:1.07;margin:0 0 22px;letter-spacing:-.035em}
.course-page .course-catalogue-hero h1 span{color:#f8a809}
.course-page .course-catalogue-intro{font-size:20px;line-height:1.5;max-width:65ch}
.course-page .course-catalogue-hero .course-catalogue-help{font-size:16px;margin-bottom:0}
.course-page .course-catalogue-section{display:block;padding:0 0 64px}
.course-page .course-catalogue-section>h2{font-size:28px;margin:0 0 22px}
.course-page .course-discovery-controls{margin-bottom:28px}
.course-page .course-search-label{font-size:16px}
.course-page #course-search{width:min(100%,700px);border-radius:12px;font-size:18px;padding:14px 16px;min-height:54px}
.course-page .course-filter-bar{gap:10px;margin-top:22px}
.course-page .course-filter-bar legend{font-size:14px}
.course-page .refresh-filter-option span{font-size:16px;border-radius:10px}
.course-page .course-results-tools{gap:8px 20px}
.course-page .course-results-tools p{font-size:16px}
.course-page .course-reset{font-size:16px}
.course-page .dojo-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:22px}
.course-page .dojo-course-card{display:flex;flex-direction:column;min-width:0;padding:22px;border-radius:20px;background-color:#14364e;border:1px solid var(--course-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.course-page .course-card-top{display:flex;align-items:center;gap:15px;margin-bottom:20px}
.course-page .course-card-top img{display:block;width:80px;height:45px;flex:0 0 80px;object-fit:cover;border-radius:7px}
.course-page .course-card-top p{font-size:13px;font-weight:700;line-height:1.4;color:#f8a809;margin:0 0 6px}
.course-page .course-level{display:block;color:var(--course-muted);font-size:13px;line-height:1.4}
.course-page .dojo-course-body{display:flex;flex:1;flex-direction:column;gap:14px;padding:0}
.course-page .dojo-course-body h3{margin:0;font-size:23px;line-height:1.2;letter-spacing:-.015em}
.course-page .dojo-course-body .course-card-summary{font-size:16px;color:var(--course-muted);line-height:1.55}
.course-page .dojo-course-meta{gap:8px 14px}
.course-page .dojo-course-meta span{min-height:0;padding:0;border:0;border-radius:0;background:none;color:#e4edf4;font-size:14px;line-height:1.5;font-weight:400}
.course-page .dojo-course-body .course-card-credit{font-size:14px;line-height:1.5;color:var(--course-muted)}
.course-page .course-card-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 15px;margin-top:auto;padding-top:10px;border-top:1px solid var(--course-line)}
.course-page .course-card-actions a{display:inline-flex;align-items:center;min-height:44px;color:#f8a809;font-size:16px;font-weight:700;text-decoration:underline}
.course-page .course-more-wrap{margin-top:30px}
.course-page .course-membership-support{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:50px}
.course-page .course-membership-support p:last-child{margin-bottom:0}
.course-page .course-support-actions>p{margin-top:12px;font-size:14px}
.course-page .course-support-actions>.course-text-link{margin-top:6px}
.course-page :is(.dojo-course-card,.course-discovery-controls,.course-more-wrap,.course-empty)[hidden]{display:none!important}
.course-page .modern-enter{animation:none}
@supports ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){.course-page :is(.course-topic-map,.course-learning-close,.course-membership-support){background-color:rgba(20,54,78,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}
@media(max-width:1100px){.course-page .course-detail-hero{gap:34px}.course-page .course-detail-hero .button-row{flex-direction:column;align-items:flex-start}.course-page .course-detail-hero .button{width:auto}.course-page .dojo-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-page .course-topic-map{padding:25px}.course-page .course-preparation{gap:40px}.course-page .course-curriculum{grid-template-columns:minmax(0,.4fr) minmax(0,1fr);gap:36px}}
@media(max-width:899px){.course-page .course-section{width:calc(100% - 48px)}.course-page .course-detail-hero{grid-template-columns:1fr;gap:32px;padding-top:28px;padding-bottom:48px}.course-page .course-detail-hero h1{max-width:25ch;font-size:clamp(36px,5.8vw,48px)}.course-page .course-detail-hero .button-row{flex-direction:row;align-items:center}.course-page .course-topic-map{width:100%;max-width:640px}.course-page .course-preparation{grid-template-columns:1fr;gap:32px;padding:40px 0 48px}.course-page .course-preparation h2{max-width:30ch}.course-page .course-facts{max-width:620px}.course-page .course-curriculum{grid-template-columns:1fr;gap:8px;padding:40px 0 48px}.course-page .course-curriculum-heading h2{margin-bottom:14px}.course-page .course-learning-close,.course-page .course-membership-support{gap:32px;padding:30px}.course-page .course-related{padding-left:24px}.course-page .course-catalogue-hero{padding-top:40px}.course-page .course-catalogue-section{padding-bottom:48px}}
@media(max-width:640px){.course-page .course-section{width:calc(100% - 32px)}.course-page .course-breadcrumb{padding-top:8px}.course-page .course-breadcrumb li[aria-current=page]{display:none}.course-page .course-detail-hero{padding-top:18px;padding-bottom:42px;gap:30px}.course-page .course-detail-hero h1{font-size:clamp(32px,8vw,40px);max-width:none;line-height:1.08;margin-bottom:20px}.course-page .course-detail-hero .course-summary{font-size:18px;line-height:1.5}.course-page .course-detail-hero .course-sample-note{font-size:16px;line-height:1.5;margin-bottom:20px}.course-page .course-detail-hero .button-row{flex-direction:column;align-items:stretch}.course-page .course-detail-hero .button{width:100%;padding-inline:14px}.course-page .course-topic-map{padding:22px;border-radius:22px}.course-page .course-topic-map h2{font-size:28px;margin-bottom:22px}.course-page .course-topic-track li{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px;min-height:60px}.course-page .course-topic-track strong{font-size:18px}.course-page .course-preparation{padding-top:34px}.course-page .course-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.course-page .course-credit{align-items:flex-start;gap:12px}.course-page .course-credit img{width:72px;height:41px;flex-basis:72px}.course-page .course-credit p{font-size:14px}.course-page .course-section-detail summary{grid-template-columns:minmax(0,1fr) 14px;gap:5px 12px;padding:16px 6px;font-size:16px}.course-page .course-section-detail summary small{grid-column:1}.course-page .course-section-detail summary::after{grid-column:2;grid-row:1 / span 2}.course-page .course-section-detail ol{padding-inline:6px}.course-page .course-section-detail ol li{grid-template-columns:minmax(0,1fr) auto;gap:10px}.course-page .course-learning-use{padding-left:18px;margin-bottom:46px}.course-page .course-learning-use>p:last-child{font-size:18px}.course-page .course-learning-close,.course-page .course-membership-support{grid-template-columns:1fr;gap:30px;padding:26px 22px;margin-bottom:48px;border-radius:22px}.course-page .course-help .button{display:flex;width:100%;margin:0 0 8px;padding-inline:14px;text-align:center}.course-page .course-related{border-left:0;border-top:1px solid var(--course-line);padding:26px 0 0}.course-page .course-catalogue-hero{padding-top:36px;padding-bottom:26px}.course-page .course-catalogue-hero h1{font-size:38px;max-width:18ch}.course-page .course-catalogue-hero .course-catalogue-intro{font-size:18px}.course-page .dojo-course-grid{grid-template-columns:1fr}.course-page .dojo-course-card{padding:22px;max-width:none}.course-page .dojo-course-body h3{font-size:24px}.course-page .course-results-tools{align-items:flex-start;flex-direction:column;gap:0}.course-page .refresh-filter-option span{padding:10px 13px}.course-page .course-support-actions .button{display:flex;width:100%;padding-inline:12px;text-align:center}}
@media(max-width:899px){.course-page .course-learning-use{grid-template-columns:1fr;gap:18px}}
@media(max-width:640px){.course-page .course-use-example>p{font-size:18px}}
@media(prefers-reduced-transparency:reduce){.course-page :is(.course-topic-map,.course-learning-close,.course-membership-support){background-color:#14364e;background-image:none;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.course-page .dojo-course-card{transition:none!important;transform:none!important}}
