/* Portraits stay intact; all visual effects are separate, non-interactive layers. */
.ac-cover.has-art{aspect-ratio:4/5;overflow:hidden;background:#25241f;isolation:isolate}
.course-page .cs-hero-img{aspect-ratio:2/3;min-height:0;align-self:start;overflow:hidden;isolation:isolate}
.course-visual{position:absolute;inset:0;overflow:hidden;isolation:isolate;--light-x:50%;--light-y:38%;--light-alpha:0;--edge-alpha:.36}
.course-visual .course-backdrop{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(22px) saturate(.65) brightness(.68);opacity:.7;pointer-events:none}
.course-visual .course-art{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:1}
.ac-cover.has-art .course-art img,.cs-hero-img .course-visual .course-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.course-light,.course-sheen,.course-edge{position:absolute;inset:0;z-index:2;pointer-events:none}
.course-light{background:radial-gradient(ellipse at var(--light-x) var(--light-y),rgba(255,237,192,.26),rgba(255,249,229,.05) 34%,transparent 64%);opacity:var(--light-alpha);mix-blend-mode:soft-light;transition:opacity .5s ease}
.course-sheen{inset:-30% -100%;background:linear-gradient(112deg,transparent 40%,rgba(255,241,207,.06) 46%,rgba(255,249,231,.28) 50%,rgba(255,241,207,.06) 54%,transparent 60%);transform:translateX(-70%);opacity:0}
.course-edge{inset:10px;border:1px solid rgba(237,210,160,var(--edge-alpha));border-radius:3px;box-shadow:inset 0 0 22px rgba(255,230,181,.035);transition:border-color .45s}
.course-visual.is-revealing .course-sheen{animation:course-light-pass 1.65s cubic-bezier(.2,.65,.3,1) both}
.ac-card:focus-visible{outline:3px solid #9c7336;outline-offset:5px}
.ac-card:focus-visible .course-light{opacity:.65}
.ac-cover.has-art .ac-badge{z-index:3}
@keyframes course-light-pass{0%{transform:translateX(-70%);opacity:0}16%{opacity:.75}82%{opacity:.5}100%{transform:translateX(70%);opacity:0}}
@media(max-width:720px){.ac-cover.has-art{aspect-ratio:4/5}.course-page .cs-hero-img{aspect-ratio:4/5}.course-edge{inset:8px}}
@media(prefers-reduced-motion:reduce){.course-visual .course-sheen{animation:none!important;opacity:0!important}.course-light,.course-edge{transition:none}.ac-card,.ac-card:hover{transition:none;transform:none}}
