/* Cursor feedback is progressive: readable and fully usable without motion. */
.course-faculty{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.6;color:#52617b;margin:0 0 20px}.faculty-avatars{display:flex;flex:none;padding-right:8px}.faculty-avatars img{width:38px;height:38px;object-fit:cover;border-radius:50%;border:2px solid #fffdfa;display:block}.faculty-avatars img+img{margin-left:-8px}.featured-faculty{font-size:13px;margin-bottom:18px;gap:9px}.featured-faculty .faculty-avatars img{width:34px;height:34px}.faculty-credit{font-size:13px!important;line-height:1.8;color:#596579;margin-top:20px!important}.premium-detail .teacher-profiles{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.premium-detail .teacher-profiles .teacher-profile{padding:0;border:1px solid #d6dfea;border-radius:16px;overflow:hidden;background:#fffdfa}.teacher-portrait{display:block;width:100%;aspect-ratio:1.18;object-fit:cover;object-position:center 25%;transition:transform .6s,filter .6s}.teacher-profile-copy{padding:27px}.premium-detail .teacher-profiles h3{font-size:27px;line-height:1.25;letter-spacing:-.6px;margin:0 0 17px}.premium-detail .teacher-profiles .teacher-role{font-size:12px!important;line-height:1.7;letter-spacing:.6px;color:#6d533f;margin:0 0 12px}.premium-detail .teacher-profile-copy>p{font-size:16px;line-height:1.8;color:#52617b;margin:0 0 20px}.teacher-cv{border-top:1px solid #d8dee8}.teacher-cv summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;gap:14px;font-size:15px;line-height:1.5;font-weight:500;cursor:pointer;list-style:none;padding-block:14px}.teacher-cv summary::-webkit-details-marker{display:none}.teacher-cv summary span{font-size:23px;transition:transform .25s}.teacher-cv[open] summary span{transform:rotate(45deg)}.teacher-cv h4{font-size:16px;margin:17px 0 13px}.teacher-cv ul{padding-left:20px}.teacher-cv li,.premium-detail .teacher-cv p{font-size:15px;line-height:1.85;color:#52617b;margin:12px 0}.teacher-cv .teacher-source{font-size:13px!important;line-height:1.8;border-top:1px solid #d8dee8;padding-top:17px;margin-top:22px!important}.teacher-source a{text-decoration:underline;text-underline-offset:3px;color:#365f9b}.carousel-playback{display:grid;grid-template-columns:90px auto 1fr;align-items:center;gap:15px;margin-top:13px;min-height:44px}.carousel-clock{height:3px;background:#d1dbea;border-radius:3px;overflow:hidden}.carousel-clock>span{display:block;width:100%;height:100%;background:#416eb2;transform:scaleX(0);transform-origin:left}.carousel-play-toggle{background:transparent;color:#344f7c;border:1px solid #c6d1e2;border-radius:25px;min-height:40px;padding:8px 15px;font-size:13px;display:flex;align-items:center;gap:13px}.carousel-play-toggle:hover{background:#e7edf6}.carousel-play-toggle:disabled{opacity:.65;cursor:default}.carousel-play-caption{font-size:12px;color:#657289;line-height:1.6}.course,.featured-slide,.teacher-profile,.program-overview>div,.acotv-module{--pointer-x:50%;--pointer-y:50%;--tilt-x:0deg;--tilt-y:0deg;--shift-x:0px;--shift-y:0px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .course,.featured-slide,.premium-detail .teacher-profile,.visual-program .program-overview>div,.visual-program .acotv-module{transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .3s;will-change:auto}
 .course.pointer-active,.featured-slide.pointer-active,.premium-detail .teacher-profile.pointer-active,.visual-program .program-overview>div.pointer-active,.visual-program .acotv-module.pointer-active{transform:perspective(1200px) translateY(-7px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));box-shadow:0 22px 48px #19294116;border-color:#7f9cc9;will-change:transform}
 .course:before,.featured-slide:before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(450px circle at var(--pointer-x) var(--pointer-y),#80a7e815,transparent 70%);opacity:0;transition:opacity .35s;pointer-events:none;z-index:3}
 .course.pointer-active:before,.featured-slide.pointer-active:before{opacity:1}
 .course.pointer-active .course-photo>img{transform:scale(1.065) translate(var(--shift-x),var(--shift-y))}
 .featured-slide.pointer-active .featured-photo img{translate:var(--shift-x) var(--shift-y);scale:1.05;transition:translate .45s,scale .7s}
 .featured-carousel.carousel-running .featured-photo img{animation:featured-breathe 8s ease-in-out infinite alternate}
 .button,.course-bottom .register-course,.course-program,.featured-secondary{transition:background .25s,color .25s,box-shadow .25s,transform .25s}
 .button:not(.featured-program):hover,.course-bottom .register-course:hover{transform:translateY(-3px);box-shadow:0 9px 18px #19294122}
 .featured-program:hover{box-shadow:inset 0 0 0 2px #6989bb!important;background:#2e4870!important}
 .button>span,.course-program>span,.text-link>span{display:inline-block;transition:transform .3s}
 .button:hover>span,.course-program:hover>span{transform:translate(4px,-3px)}
 .text-link:hover>span{transform:translateY(4px)}
 .header nav a:not(.nav-cta):hover{color:#3867aa}
 .header nav a:not(.nav-cta):before{content:'';height:2px;position:absolute;left:0;right:0;bottom:4px;background:#7a96c2;transform:scaleX(0);transform-origin:left;transition:transform .3s}
 .header nav a:not(.nav-cta):hover:before{transform:scaleX(1)}
 .filter{transition:background .25s,box-shadow .25s,transform .25s}
 .filter:hover{transform:translateY(-2px);box-shadow:0 5px 12px #1929410b}
 .faq-list details,.principle{transition:padding .3s,background .3s}
 .faq-list details:hover{background:#e9edf566;padding-inline:12px}
 .approach .principle:hover{background:#ffffff08;padding-inline:12px}
 .visual-program .program-topic{transition:background .35s,border-color .35s}
 .visual-program .program-topic:hover{border-top-color:#8da5cb}
 .visual-program .program-seminar summary>img{transition:transform .5s,filter .5s}
 .visual-program .program-seminar summary:hover>img{transform:scale(1.035);filter:brightness(1.12)}
 .teacher-profile.pointer-active .teacher-portrait{filter:contrast(1.025) saturate(1.04)}
 .field input,.field select{transition:border-color .2s,box-shadow .2s,background .2s}
 .field input:hover,.field select:hover{border-color:#7c9bc8;background:#fdfdff}
 .field input:focus,.field select:focus{box-shadow:0 0 0 4px #416eb212;border-color:#416eb2}
 .featured-controls>button{transition:background .25s,transform .25s,box-shadow .25s}
 .featured-controls>button:hover{transform:scale(1.12);background:#dce6f5;box-shadow:0 5px 14px #19294110}
 .featured-tabs button{transition:background .25s,transform .25s,box-shadow .25s}
 .featured-tabs button:hover{transform:translateY(-2px);box-shadow:0 5px 12px #1929410d}
}
@keyframes featured-breathe{from{scale:1}to{scale:1.075}}
@media(max-width:800px){.premium-detail .teacher-profiles{gap:20px}.teacher-profile-copy{padding:24px}.premium-detail .teacher-profiles h3{font-size:24px}.carousel-playback{grid-template-columns:65px auto 1fr;gap:12px}.carousel-play-caption{font-size:12px}}
@media(max-width:600px){.premium-detail .teacher-profiles{grid-template-columns:1fr;gap:25px}.teacher-portrait{aspect-ratio:1.15}.teacher-profile-copy{padding:25px}.premium-detail .teacher-profiles h3{font-size:27px}.premium-detail .teacher-profile-copy>p{font-size:16px}.teacher-cv summary{font-size:16px;min-height:54px}.teacher-cv li,.premium-detail .teacher-cv p{font-size:16px}.teacher-cv .teacher-source{font-size:13px!important}.course-faculty{font-size:14px;margin-bottom:19px;gap:10px}.featured-faculty{font-size:13px}.faculty-avatars img{width:36px;height:36px}.carousel-playback{grid-template-columns:1fr auto;gap:10px 18px;margin-top:10px}.carousel-clock{width:100%}.carousel-play-caption{grid-column:1/-1;font-size:12px;text-align:center}.carousel-play-toggle{font-size:13px;min-height:44px}.featured-content{padding-bottom:26px}}
@media(prefers-reduced-motion:reduce){.course,.featured-slide,.teacher-profile,.program-overview>div,.acotv-module,.featured-photo img,.course-photo img{transform:none!important;translate:none!important;scale:none!important;animation:none!important;transition:none!important}.carousel-clock>span{animation:none!important}.teacher-portrait{transition:none}}
