.courses-main{min-height:70vh;background:var(--cream);padding:64px 5% 88px}.courses-intro{text-align:center;max-width:760px;margin:0 auto 44px}.courses-intro h1{color:var(--ink);font-size:clamp(54px,8vw,96px);margin:16px 0 24px;line-height:1.1}.courses-intro>p:last-child{max-width:540px;margin:auto}.course-library{max-width:1080px;margin:auto}.courses-empty{text-align:center;padding:48px 24px 56px;background:#f8e4eb;border:1px solid #48291f15;border-radius:30px}.course-mark{display:block;font:64px Georgia;color:#9f495c;margin-bottom:20px}.courses-empty h2{font-size:clamp(36px,5vw,58px);margin:18px 0 24px}.courses-empty .button{margin-top:30px}.courses-page [aria-current=page]{text-decoration:underline;text-underline-offset:6px}#course-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.course-entry{padding:24px;background:#f8e4eb;border-radius:24px}.course-entry h2{font-size:30px;margin-bottom:16px}.course-entry video{width:100%;border-radius:14px}.course-entry p{margin:16px 0}.courses-empty[hidden]{display:none}@media(max-width:620px){header{height:auto;min-height:90px;gap:12px;padding:12px 5%;flex-wrap:wrap}header nav{gap:12px;font-size:12px;flex-wrap:wrap}header .brand{flex-shrink:0}.courses-main{padding:40px 5% 56px}}@media(prefers-reduced-motion:no-preference){.courses-intro,.courses-empty,.course-entry{animation:course-arrive .8s ease both}@keyframes course-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}}
/* Use the shared centered branding on this page as well. */
@media(max-width:620px){.courses-page header{display:grid;padding:10px 16px 14px;gap:10px}.courses-page header nav{gap:18px}}
