/* Shared heading hierarchy for the ten visible course sections. */
.blueprint-course-page .course-v3-content{--section-heading-size:clamp(30px,3.3vw,46px);--section-title:#344338;--section-accent:#758e50;font-family:"Noto Sans TC",sans-serif}
.blueprint-course-page .course-v3-content .numerology-section-title{font-family:"Noto Serif TC",serif;font-size:var(--section-heading-size);font-weight:600;line-height:1.5;letter-spacing:.015em;color:var(--section-title);margin:0;text-wrap:balance}
.blueprint-course-page .course-v3-content .v3-heading.light .numerology-section-title,.blueprint-course-page .course-v3-content .capability-heading .numerology-section-title{color:#f7f8ef}
.blueprint-course-page .course-v3-content .capability-heading .numerology-section-title span{display:block;font:inherit;color:#b6d879;margin-top:6px}
.blueprint-course-page .course-v3-content :is(.v3-heading,.why-heading)>p:first-child,.blueprint-course-page .course-v3-content .v3-heading>div>p:first-child,.blueprint-course-page .course-v3-content .numerology-kicker{display:flex;align-items:center;gap:12px;margin:0 0 22px;font:600 12px/1.6 "Noto Sans TC",sans-serif;letter-spacing:.14em;color:var(--section-accent)}
.blueprint-course-page .course-v3-content :is(.v3-heading,.why-heading)>p:first-child>span,.blueprint-course-page .course-v3-content .v3-heading>div>p:first-child>span,.blueprint-course-page .course-v3-content .numerology-kicker>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #a9bf86;border-radius:50%;font:600 12px/1 "Noto Sans TC",sans-serif;letter-spacing:0;color:inherit;background:transparent}
.blueprint-course-page .course-v3-content .v3-heading.light>p:first-child,.blueprint-course-page .course-v3-content .v3-heading.light>div>p:first-child,.blueprint-course-page .course-v3-content .capability-heading>.numerology-kicker{color:#c3d7a0}
.blueprint-course-page .course-v3-content :is(.v3-heading,.why-heading,.capability-heading){margin-bottom:40px}
.blueprint-course-page .course-v3-content .capability-heading>.numerology-kicker{justify-content:center}
.blueprint-course-page .teacher-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);align-items:start}
.blueprint-course-page .teacher-photo{margin:0;min-height:0;display:block;aspect-ratio:2/3;border-radius:4px 4px 40px 4px;background:#e7eae3;box-shadow:16px 16px 0 #e4eace}
.blueprint-course-page .teacher-photo::before,.blueprint-course-page .teacher-photo::after{display:none}
.blueprint-course-page .teacher-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.blueprint-course-page .teacher-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:38px 20px 20px;background:linear-gradient(transparent,#132a2bc9);font-size:10px;letter-spacing:.15em;color:#fff}
.blueprint-course-page .teacher-title{font-weight:500;color:#5b784a;font-size:14px;line-height:1.9}
.blueprint-course-page .teacher-layout>div:last-child>p:not(.teacher-title){font-size:15px;line-height:1.95}
.teacher-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0;padding-block:20px;border-block:1px solid #dce3d4}.teacher-highlights b{display:block;font:600 23px/1.5 "Noto Sans TC",sans-serif;color:#527644}.teacher-highlights span{display:block;font-size:11px;line-height:1.8;color:#738069}.teacher-publications h3{font:600 15px "Noto Sans TC",sans-serif;margin:22px 0 12px}.teacher-publications ul{list-style:none;padding:0;margin:0}.teacher-publications li{font-size:13px;line-height:1.9;padding:8px 0;border-bottom:1px solid #e4e9dd}.teacher-publications li span{display:block;font-size:10px;color:#7a886d;letter-spacing:.04em}.teacher-story-link{display:inline-flex;gap:20px;color:#527644;border-bottom:1px solid #a5bd8a;font-size:13px;padding:8px 0;margin-top:22px}
@media(max-width:900px){.blueprint-course-page .teacher-layout{grid-template-columns:1fr}.blueprint-course-page .teacher-photo{width:min(100%,440px);justify-self:center}.blueprint-course-page .course-v3-content .v3-heading.split{gap:28px}}
@media(max-width:600px){.blueprint-course-page .course-v3-content{--section-heading-size:30px}.blueprint-course-page .course-v3-content .numerology-section-title{line-height:1.55}.blueprint-course-page .course-v3-content :is(.v3-heading,.why-heading)>p:first-child,.blueprint-course-page .course-v3-content .v3-heading>div>p:first-child,.blueprint-course-page .course-v3-content .numerology-kicker{font-size:10px;letter-spacing:.08em;gap:10px;margin-bottom:18px}.teacher-highlights{gap:8px}.teacher-highlights b{font-size:20px}.teacher-highlights span{font-size:10px}}
.blueprint-course-page .course-v3-content .why-heading{grid-template-columns:1.1fr 1fr;gap:24px 48px}.blueprint-course-page .course-v3-content .why-heading>p:first-child{grid-column:1/-1;margin-bottom:0}.blueprint-course-page .course-v3-content .why-heading>h2{grid-column:1}.blueprint-course-page .course-v3-content .why-heading>div{grid-column:2}@media(max-width:760px){.blueprint-course-page .course-v3-content .why-heading{grid-template-columns:1fr;gap:22px}.blueprint-course-page .course-v3-content .why-heading>div{grid-column:1}}

/* Course information: deliberate title lines and true two-axis button centering. */
.blueprint-course-page .course-v3-content #course-info .enrollment-two-lines{font-size:clamp(25px,2.35vw,36px);line-height:1.65;letter-spacing:-.025em}
.blueprint-course-page #course-info .enrollment-two-lines>span{display:block}
@media(min-width:1001px){.blueprint-course-page #course-info .enrollment-two-lines>span{white-space:nowrap}}
.blueprint-course-page .course-v3-content #course-info aside .btn{display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;line-height:1.5;padding:13px 22px;box-sizing:border-box}
@media(max-width:700px){.blueprint-course-page .course-v3-content #course-info .enrollment-two-lines{font-size:clamp(23px,5vw,30px);line-height:1.6}}

/* On mobile, introduce the instructor before showing the portrait. */
.blueprint-course-page .teacher-photo-mobile{display:none}
@media(max-width:900px){.blueprint-course-page .numerology-teacher-media>.teacher-photo{display:none}.blueprint-course-page .teacher-photo-mobile{display:block;width:min(100%,440px);margin:30px auto 0}}
