/* Course detail only. Keep the wider public site and checkout styles independent. */
.course-page{--course-navy:#152f3c;--course-muted:#52636b;--course-gold:#97713b;--course-border:#dce3e3;--course-soft:#f3f6f5;background:#fff;color:var(--course-navy);padding-bottom:0}
.course-page section[id],.course-page aside[id]{scroll-margin-top:88px}
.course-page .course-hero{background:linear-gradient(115deg,#f4f5ee 0%,#eef3f1 100%);padding:24px 0 0}
.course-hero .cic-breadcrumb{font-size:12px;line-height:1.6;flex-wrap:wrap;gap:12px;margin-bottom:36px;color:var(--course-muted)}
.course-hero .cic-breadcrumb a{text-decoration:none}.course-hero .cic-breadcrumb a:hover{text-decoration:underline}
.course-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:64px;padding-bottom:44px}
.course-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.course-badges span{font-size:11px;line-height:1.5;font-weight:600;border:1px solid #cbd5cd;background:#ffffff80;border-radius:30px;padding:7px 12px;color:#344d48}
.course-hero h1{font-size:clamp(40px,4.3vw,62px);line-height:1.08;letter-spacing:-.04em;margin:0 0 22px;overflow-wrap:anywhere;max-width:650px}
.course-hero .course-lead{font-size:16px;line-height:1.85;color:var(--course-muted);max-width:560px;margin-bottom:26px}
.course-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.course-page .cic-btn{border-radius:6px;min-height:50px}.course-secondary-link{font-size:13px;font-weight:600;text-decoration:none;padding:12px 0;display:inline-flex;gap:16px;align-items:center}.course-secondary-link:hover{color:var(--course-gold)}
.course-hero .course-institution{font-size:11px;letter-spacing:.03em;margin:22px 0 0;color:#61736f}
.course-hero-art{position:relative;background:#dce5df;border-radius:12px;overflow:hidden;min-width:0;box-shadow:0 18px 45px #19393614;aspect-ratio:1.28}
.course-hero-art>img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.course-art-placeholder{height:100%;position:absolute;inset:0;padding:32px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(ellipse at 70% 20%,#d6dbc2,transparent 70%),#dce8df;color:#294c44}.course-art-placeholder .cic-kicker{font-size:9px}.course-art-letter{font:170px/1 Georgia,serif;opacity:.75}.course-art-placeholder>span:last-child{padding-bottom:48px;font-size:13px}
.course-art-caption{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(transparent,#102731eb);color:white;padding-top:66px}.course-art-caption small{display:block;font-size:9px;letter-spacing:.15em;color:#e2d3b2;margin-bottom:6px}.course-art-caption strong{font-size:17px;font-weight:500}
.course-hero .course-fact-strip{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid #d4ded8;margin:0;padding:24px 0}.course-fact-strip>span{flex:1 1 120px;min-width:0;padding:0 20px;border-right:1px solid #d4ded8;font-size:15px;font-weight:600;line-height:1.5}.course-fact-strip>span:first-child{padding-left:0}.course-fact-strip>span:last-child{border:0}.course-fact-strip small{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#5d6e69;font-weight:500;margin-bottom:5px}
.course-section-nav{position:sticky;top:0;z-index:20;background:#ffffffed;backdrop-filter:blur(12px);border-bottom:1px solid var(--course-border)}.course-section-nav>.container{display:flex;gap:30px;overflow-x:auto;scrollbar-width:thin}.course-section-nav a{flex-shrink:0;padding:21px 0 18px;border-bottom:3px solid transparent;font-size:12px;font-weight:600;text-decoration:none;color:#52636b;white-space:nowrap}.course-section-nav a:hover,.course-section-nav a[aria-current]{color:var(--course-navy);border-color:var(--course-gold)}
.course-page .course-main{padding:54px 0 68px}.course-page .cic-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:60px;align-items:start}.course-page .cic-detail-body{min-width:0}.course-page .cic-detail-body>section{padding:0 0 36px;margin:0 0 36px;border-bottom:1px solid var(--course-border)}.course-page .cic-detail-body>section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.course-page .cic-detail-body h2{font-size:32px;margin:0 0 20px;line-height:1.2}.course-page .cic-detail-body h3{font-size:20px}.course-page .cic-kicker{color:var(--course-gold);font-size:9px;margin-bottom:10px}.course-page .cic-rich{font-size:15px;line-height:1.9;color:var(--course-muted);overflow-wrap:anywhere}.course-page .cic-detail-body p{font-size:14px;line-height:1.85;color:var(--course-muted)}
.course-page .cic-outcomes{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;list-style:none;padding:0;margin:0}.course-page .cic-outcomes li{position:relative;margin:0;background:var(--course-soft);border-radius:6px;padding:18px 18px 18px 42px;font-size:13px;line-height:1.7;color:#344e55;border:1px solid #e8edeb}.course-page .cic-outcomes li:before{content:'✓';position:absolute;left:17px;top:18px;color:#386356;font-weight:700}
.course-more-outcomes{margin-top:16px}.course-more-outcomes summary{cursor:pointer;font-size:12px;font-weight:600;padding:12px 0;color:#3c5a50;min-height:44px}.course-more-outcomes[open] summary{margin-bottom:10px}
.course-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.course-expand{border:1px solid var(--course-border);padding:10px 14px;min-height:44px;background:white;border-radius:5px;font-size:11px;font-weight:600;color:var(--course-navy);flex-shrink:0}.course-expand:hover{background:var(--course-soft)}
.course-page .course-module{border:1px solid var(--course-border);border-radius:8px;margin-bottom:12px;padding:0;background:white;overflow:hidden}.course-module summary{display:flex;align-items:center;gap:14px;list-style:none;padding:19px 20px;cursor:pointer}.course-module summary::-webkit-details-marker{display:none}.course-module-number{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border:1px solid #d5e0da;border-radius:6px;background:#f4f7f4;font-size:11px;color:#567465}.course-module-name{flex:1;min-width:0}.course-module-name strong{font-size:14px;font-weight:600;line-height:1.5;display:block}.course-module-name small{display:block;color:#65777c;font-size:11px;margin-top:4px}.course-module-toggle{font-size:21px;font-weight:400;line-height:1;color:#6e7e78}.course-module[open]{border-color:#a9bdb3}.course-module[open]>summary{background:#f6f8f6;border-bottom:1px solid var(--course-border)}.course-module[open] .course-module-toggle{transform:rotate(45deg)}.course-page .course-module>div{padding:18px 22px}.course-module>div>p:first-child{font-size:13px;margin-bottom:12px}.course-module ul{list-style:none;margin:0;padding:0;counter-reset:lesson}.course-module li{counter-increment:lesson;padding:13px 0;border-top:1px solid #edf0ee;font-size:13px;line-height:1.6;display:flex;align-items:baseline;gap:15px;color:#3e535b}.course-module li:before{content:counter(lesson,decimal-leading-zero);font-size:10px;color:#809087;min-width:18px}.course-module li:first-child{border-top:0}
.course-page .course-assessment{padding:26px!important;background:#eef4f0;border:1px solid #d4e3d9!important;border-radius:8px}.course-assessment dl{display:flex;gap:40px;margin:24px 0 0}.course-assessment dt{font-size:11px;font-weight:500;color:#5e736b;margin-bottom:5px}.course-assessment dd{font-size:24px;font-family:Georgia,serif;margin:0;color:#25443c}
.course-page .cic-enroll-aside{position:sticky;top:88px;min-width:0}.course-page .cic-enroll-aside .cic-panel{padding:28px;background:#fff;border:1px solid var(--course-border);border-top:3px solid var(--course-gold);border-radius:9px;box-shadow:0 12px 38px #18333d0b}.course-page .cic-enroll-aside h2{font-size:26px}.course-page .cic-enroll-aside .cic-price{font-size:39px;letter-spacing:-.035em;margin-top:20px}.course-page .cic-enroll-aside .cic-price small{font-size:14px;letter-spacing:0}.course-page .cic-enroll-aside p{font-size:12px;line-height:1.75}.course-page .cic-summary-line{gap:15px;padding:12px 0;font-size:12px}.course-page .cic-summary-line strong{text-align:right}.course-page .cic-enroll-aside .form-label{font-size:12px;font-weight:600}.course-page .form-select,.course-page .form-control{border:1px solid #cdd8d7;border-radius:5px;font-size:14px;min-height:48px;background-color:#fff}.course-page .form-control:focus,.course-page .form-select:focus{border-color:#708e80;box-shadow:0 0 0 3px #708e801f}.course-page .cic-note{border-radius:6px;font-size:12px;line-height:1.8}
.course-page .course-inquiry{background:#f5f6f2;padding:30px!important;border-radius:9px;border:1px solid #e3e7df!important}.course-inquiry .form-label{font-size:12px;font-weight:600}.course-inquiry>p{margin-bottom:24px}.course-page .cic-faq:not(.course-module){border-bottom:1px solid var(--course-border)}.course-page .cic-faq:not(.course-module) summary{font-size:14px;line-height:1.6;padding:16px 0;cursor:pointer}.course-mobile-action{display:none}
@media(min-width:992px){.course-page .cic-enroll-aside{max-height:calc(100dvh - 106px);overflow-y:auto;scrollbar-width:thin;padding:0 3px 16px}.course-page .cic-enroll-aside .cic-panel{box-shadow:none}}
@media(max-width:1100px){.course-hero-grid{gap:32px}.course-page .cic-detail-layout{grid-template-columns:minmax(0,1fr) 310px;gap:32px}.course-page .cic-enroll-aside .cic-panel{padding:24px}}
@media(max-width:991px){.course-page .cic-detail-layout{grid-template-columns:1fr;gap:35px}.course-page .cic-enroll-aside{position:static;max-width:none}.course-page .course-main{padding-top:36px}.course-mobile-action{display:flex;position:fixed;left:0;right:0;bottom:0;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--course-border);padding:12px 24px calc(12px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:16px;z-index:35;box-shadow:0 -8px 30px #12303909}.course-mobile-action>div{min-width:0;flex:1}.course-mobile-action small{display:block;color:var(--course-muted);font-size:10px;margin-bottom:3px}.course-mobile-action strong{display:block;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-mobile-action .cic-btn{flex-shrink:0}.course-page{padding-bottom:88px}.course-hero-grid{grid-template-columns:1.1fr 1fr;gap:25px}.course-hero h1{font-size:42px}.course-hero .course-lead{font-size:14px}.course-hero-actions{gap:12px}.course-hero-actions .cic-btn{padding:13px 16px;font-size:12px}.course-art-caption{padding:20px;padding-top:60px}.course-art-caption strong{font-size:14px}.course-art-letter{font-size:130px}}
@media(max-width:640px){.course-page .container{padding-left:20px;padding-right:20px}.course-page .course-hero{padding-top:18px}.course-hero .cic-breadcrumb{font-size:10px;gap:8px;margin-bottom:26px}.course-hero-grid{grid-template-columns:1fr;gap:26px;padding-bottom:26px}.course-hero h1{font-size:39px;margin-bottom:18px}.course-badges{margin-bottom:18px}.course-badges span{font-size:10px}.course-hero .course-lead{font-size:14px;line-height:1.8}.course-hero-art{aspect-ratio:1.75}.course-art-placeholder{padding:22px}.course-art-letter{font-size:100px}.course-hero .course-institution{margin-top:16px;font-size:10px}.course-hero .course-fact-strip{display:grid;grid-template-columns:1fr 1fr;padding:20px 0;gap:18px}.course-fact-strip>span,.course-fact-strip>span:first-child{padding:0;border:0;font-size:14px}.course-section-nav>.container{gap:24px}.course-section-nav a{font-size:11px;padding:17px 0 14px}.course-page .cic-detail-body h2{font-size:29px}.course-page .cic-detail-body>section{padding-bottom:28px;margin-bottom:28px}.course-page .cic-outcomes{grid-template-columns:1fr;gap:10px}.course-page .cic-outcomes li{font-size:13px;padding-top:14px;padding-bottom:14px}.course-page .cic-outcomes li:before{top:14px}.course-section-heading{align-items:flex-start;flex-direction:column;gap:0}.course-expand{margin-bottom:16px}.course-module summary{padding:16px 14px;gap:12px}.course-module-name strong{font-size:13px}.course-page .course-module>div{padding:16px}.course-page .course-inquiry{padding:22px!important}.course-inquiry .cic-btn{width:100%}.course-page .course-assessment{padding:22px!important}.course-mobile-action{padding-left:20px;padding-right:20px}.course-hero-actions{gap:20px}.course-page section[id],.course-page aside[id]{scroll-margin-top:78px}}
@media(prefers-reduced-motion:reduce){.course-page *, .course-page *:before{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:991px){.cic-public:has(.course-page) .cic-cookie{bottom:calc(98px + env(safe-area-inset-bottom))}.cic-public:has(.course-page) .cic-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}
