/* Course editorial layout: blue photographic hero, generous reading rhythm. */
.course-hero{position:relative;isolation:isolate;overflow:hidden;padding:32px 0 60px;min-height:560px}
.course-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 37%;z-index:-2}
.course-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,29,73,.95) 0%,rgba(4,37,90,.81) 48%,rgba(3,28,68,.85) 100%);z-index:-1}
.course-hero .breadcrumbs{color:#e0e8f5;font-size:12px;margin-bottom:42px}
.course-hero-grid{grid-template-columns:minmax(0,1fr) 350px;gap:72px;align-items:center}
.course-hero-copy{padding-block:15px}
.course-hero .eyebrow{letter-spacing:.5px;font-size:13px;font-weight:500;text-transform:none;color:#dfebff;margin-bottom:19px;max-width:560px}
.course-hero h1{font-size:clamp(48px,4.8vw,72px);line-height:1.02;max-width:760px;margin-bottom:24px}
.course-hero-grid .intro{font-size:18px;line-height:1.7;max-width:660px;color:#f0f4fc;text-wrap:pretty}
.course-hero .course-badges{gap:12px;margin:32px 0 0}
.course-badges>span{display:flex;align-items:center;gap:12px;padding:15px 18px;background:#ffffff10;border:1px solid #ffffff32;backdrop-filter:blur(3px);border-radius:7px;font-size:14px;font-weight:600;line-height:1.4}
.course-badges>span>span{display:block;border:0;padding:0;font:inherit;color:#fff}
.course-badges small{display:block;font-size:10px;letter-spacing:.4px;font-weight:400;margin-bottom:4px;color:#d2e3fb}
.course-badges>.icon,.course-badges>span>.icon{width:21px;height:21px;color:#d0e2ff;flex-shrink:0}
.course-hero .scholarship-card{padding:30px;border-radius:14px;box-shadow:0 18px 40px #03152c24}
.offer-heading{font-size:15px;font-weight:700;line-height:1.4;padding-bottom:24px;margin-bottom:25px;border-bottom:1px solid var(--line)}
.scholarship-card .scholarship-label{font-size:11px;letter-spacing:1.6px}
.scholarship-card .scholarship-value{font-size:102px;margin:5px 0 8px}
.scholarship-card .scholarship-description{font-size:17px;margin-bottom:23px}
.scholarship-card .scholarship-extra{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;font-size:12px;padding-top:20px;margin-bottom:24px}
.scholarship-extra>.icon{color:var(--red);width:16px;height:16px;margin-right:2px}
.scholarship-card .button{padding-block:16px;font-size:14px}
.course-nav .wrap{gap:30px;padding-block:22px;scrollbar-width:thin;scrollbar-color:#b2c3db transparent}
.course-nav a{font-size:13px;position:relative}
.course-nav a:hover{color:var(--red)}
/* Independent course sections; the facts and CTA stay within their own section. */
.course-band{padding-block:76px;margin:0;scroll-margin-top:110px}
.course-section h2{font-size:36px;line-height:1.16;letter-spacing:-.9px;margin:0 0 24px;text-wrap:pretty}
.course-section p{font-size:15px;line-height:1.85;color:#566780;margin:0 0 18px}
.course-section .eyebrow,.course-facts-card>.eyebrow{font-size:10px;letter-spacing:1.5px;line-height:1.5;font-weight:700;color:var(--red);margin:0 0 16px}
.course-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:36px}
.course-section-heading h2{margin-bottom:0}
.course-section .section-intro{font-size:14px;line-height:1.8;max-width:390px;margin:0}
.overview-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:80px;align-items:start}
.overview-content{min-width:0}
.course-overview{background:#fff}
.course-overview .course-highlights{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none}
.course-highlights li{display:flex;align-items:flex-start;gap:8px;border:0;background:#f3f6fa;padding:10px 13px;border-radius:5px;font-size:12px;line-height:1.6}
.course-highlights .icon{width:15px;height:15px;flex-shrink:0;color:var(--blue);margin-top:2px}
.course-profile{scroll-margin-top:110px;margin-top:30px;padding:22px 24px;background:#f5f8fc;border-left:3px solid #cbdcf4;border-radius:0 8px 8px 0}
.course-profile h3{font-size:18px;line-height:1.4;margin:0 0 10px;color:var(--navy)}
.course-profile p{font-size:14px;line-height:1.8;margin:0}
.course-profile p+p{margin-top:12px}
.profile-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--blue);border-bottom:1px solid #b7c7e0;padding-bottom:5px;margin-top:16px}
.profile-link .icon{width:16px;height:16px;flex-shrink:0}
.course-facts-card{position:static;padding:30px;border:1px solid var(--line);border-radius:12px;background:#fff}
.course-facts-card h2{font-size:23px;line-height:1.25;margin:0 0 22px;letter-spacing:-.4px}
.course-facts-card dl{margin:0}
.course-facts-card dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px;border-bottom:1px solid var(--line);padding:17px 0}
.course-facts-card dl>div:first-child{padding-top:0}
.course-facts-card dl>div:last-child{border:0;padding-bottom:0}
.course-facts-card dt{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.course-facts-card dt>.icon{width:18px;height:18px;color:var(--blue);flex-shrink:0}
.course-facts-card dd{font-size:13px;line-height:1.6;font-weight:600;text-align:right;margin:0;padding:0;overflow-wrap:anywhere}
.course-learning{background:#f3f6fa}
.learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.learning-card{border:1px solid var(--line);padding:32px;border-radius:12px;background:#fff;min-width:0}
.learning-number{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#edf3fc;color:var(--blue);font-family:'Barlow Condensed',sans-serif;font-size:28px;line-height:1;margin-bottom:24px}
.learning-card h3{font-size:21px;line-height:1.35;letter-spacing:-.3px;margin:0 0 14px}
.learning-card p{font-size:14px;line-height:1.8;margin:0}
.course-curriculum{background:#fff}
.curriculum-layout{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.curriculum-heading{max-width:340px}
.curriculum-heading p:last-child{font-size:14px;margin:0}
.curriculum-content{min-width:0;max-width:100%}
.curriculum-list{border-radius:10px;background:#fff;margin-bottom:20px}
.curriculum-list summary{padding:23px 26px;font-size:15px;gap:20px}
.curriculum-list summary .icon{flex-shrink:0}
.curriculum-list ul{padding:0 26px 22px}
.curriculum-list li{padding-block:13px;font-size:13px}
.curriculum-download{font-size:13px;line-height:1.65;align-items:center;padding:20px 28px;border:1px solid #dce5f3;border-radius:7px;background:#f3f6fc;text-decoration:none;max-width:100%}
.curriculum-download:hover{background:#e9f0fb}
.curriculum-download>.icon{flex-shrink:0}
.curriculum-content>p{padding:24px;border:1px solid var(--line);border-radius:10px;background:#f7f9fc;font-size:14px;margin:0}
.course-careers{background:#f7f9fc}
.careers-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:64px;align-items:start}
.careers-content{min-width:0}
.careers-content>h2{max-width:570px}
.careers-content>.section-intro{max-width:none;margin:0}
.career-grid{display:grid;margin-top:26px}
.career-card{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid #dfe6f0}
.career-card:last-child{padding-bottom:0;border-bottom:0}
.career-icon{flex-shrink:0;width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:#e7eef9;color:var(--blue)}
.career-icon>.icon{width:21px;height:21px}
.career-card h3{font-size:18px;line-height:1.35;letter-spacing:-.3px;margin:0 0 8px}
.career-card p{font-size:14px;line-height:1.8;margin:0}
.course-inline-cta{position:static;margin:0;padding:36px;background:var(--navy);border-radius:14px;color:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.course-inline-cta span{font-size:10px;letter-spacing:1.5px;color:#cbdcf5;font-weight:600}
.course-inline-cta h2{font-size:29px;letter-spacing:-.5px;margin:16px 0;line-height:1.25;color:#fff}
.course-inline-cta p{font-size:14px;line-height:1.8;margin:0;color:#d3e0f3}
.course-inline-cta .button{font-size:13px;padding:14px 20px;gap:16px;max-width:100%}
.course-faq{background:#fff}
.faq-section-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:start}
.faq-heading{max-width:350px}
.course-faq details{padding:23px 0;border-bottom:1px solid var(--line)}
.course-faq details:first-child{padding-top:0}
.course-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;font-size:15px;line-height:1.6}
.course-faq summary::-webkit-details-marker{display:none}
.course-faq summary>.icon{flex-shrink:0;width:17px;height:17px;color:var(--blue);transition:transform .2s}
.course-faq details[open] summary>.icon{transform:rotate(45deg)}
.course-faq details>p{font-size:14px;line-height:1.8;margin:16px 0 0}
.course-bottom-cta{padding-block:60px}
@media(max-width:1100px){
 .course-hero-grid{grid-template-columns:minmax(0,1fr) 310px;gap:35px}.course-hero h1{font-size:56px}.course-hero-grid .intro{font-size:16px}.course-badges>span{padding:12px 14px;font-size:12px}
 .overview-layout,.careers-layout,.faq-section-layout{gap:36px}.course-section h2{font-size:32px}.learning-card{padding:26px}.course-facts-card{padding:24px}.course-inline-cta{padding:28px}.course-inline-cta h2{font-size:27px}
}
@media(max-width:900px){
 .overview-layout,.careers-layout{grid-template-columns:minmax(0,1fr)}
 .course-facts-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .course-facts-card dl>div{display:block;padding:0;border:0}.course-facts-card dt{margin-bottom:7px}.course-facts-card dd{text-align:left;padding-left:27px}
 .course-inline-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px}
 .course-inline-cta h2{max-width:460px}
}
@media(max-width:760px){
 .course-hero{padding:25px 0 36px;min-height:0}.course-hero-photo{object-position:48% top}.course-hero:after{background:linear-gradient(180deg,#032453db 0%,#05275ce6 52%,#06265df2 100%)}.course-hero .breadcrumbs{margin-bottom:26px}.course-hero-grid{grid-template-columns:minmax(0,1fr);gap:30px}.course-hero-copy{padding:0}.course-hero h1{font-size:49px;margin-bottom:20px}.course-hero .eyebrow{font-size:12px;line-height:1.6;margin-bottom:16px}.course-hero-grid .intro{font-size:16px;line-height:1.8}.course-hero .course-badges{margin-top:26px;gap:9px}.course-badges>span{padding:13px 14px;gap:9px}.course-hero .scholarship-card{padding:28px;width:100%;max-width:none}.offer-heading{padding-bottom:19px;margin-bottom:22px}.course-nav .wrap{padding-block:19px;gap:25px}.course-nav a{font-size:12px}
 .course-band{padding-block:48px;margin:0}.course-section h2{font-size:30px}.course-section p{font-size:14px}.course-section .eyebrow{font-size:10px}
 .course-section-heading{display:block;margin-bottom:28px}.course-section-heading .section-intro{margin-top:18px;max-width:100%}
 .faq-section-layout{grid-template-columns:minmax(0,1fr);gap:28px}.curriculum-heading,.faq-heading{max-width:none}.faq-heading h2{margin-bottom:0}
 .course-facts-card{padding:25px}.course-inline-cta{display:flex;gap:24px;padding:28px}.course-inline-cta h2{font-size:27px}.course-inline-cta p{font-size:14px;color:#d3e0f3}.course-bottom-cta{padding-block:42px}
}
@media(max-width:520px){
 .course-hero h1{font-size:44px}.course-badges>span{padding:12px;font-size:11px;gap:8px}.course-badges>span>.icon{width:18px;height:18px}.course-badges small{font-size:9px}
 .learning-grid{grid-template-columns:1fr}.learning-card{padding:27px}.learning-card h3{font-size:20px}.learning-number{margin-bottom:20px}.course-profile{padding:20px}.course-profile h3{font-size:17px}
 .career-card{gap:14px}.career-icon{width:35px;height:35px}.career-card h3{font-size:17px}.career-card p{font-size:13px}
 .course-facts-card dl{gap:22px 18px}.course-facts-card dt{font-size:11px;gap:7px}.course-facts-card dd{font-size:12px;padding-left:25px}.course-facts-card h2{font-size:23px}
 .curriculum-list summary{padding:20px;font-size:14px}.curriculum-list ul{padding-inline:20px}.curriculum-download{font-size:12px;padding:18px 22px}.course-faq summary{font-size:14px}
}
@media(min-width:521px) and (max-width:1100px){.learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-card:last-child:nth-child(odd){grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.course-faq summary>.icon{transition:none}}
