
/* Masthead, course groups and review motion — media quality pass. */
.catalogue-group>summary:has(.group-label){list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:18px;padding:25px 26px;cursor:pointer;font-weight:700;line-height:1.5;color:var(--ink)}
.catalogue-group>summary:has(.group-label)::-webkit-details-marker{display:none}
.catalogue-group>summary:has(.group-label) .group-label{font-size:19px;overflow-wrap:anywhere}
.catalogue-group>summary:has(.group-label) .group-count{font-size:12px;font-weight:400;color:var(--muted);white-space:nowrap}
.catalogue-group>summary:has(.group-label):focus-visible{outline:3px solid #be5a20;outline-offset:-5px;border-radius:16px}
.catalogue-group>summary:has(.group-label):hover{background:#f7f9fc}
.catalogue-group>.course-grid{display:grid;gap:16px;padding:0 22px 22px;min-width:0}
.catalogue-group>.course-grid>.course-card{margin:0;min-width:0;box-shadow:none}
.reviews-group{display:flex;gap:35px;align-items:flex-start}
.review-avatar{position:relative;flex-shrink:0;overflow:hidden}.review-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.review-avatar img[hidden]{display:none}.review-byline>div{min-width:0}.review-card .review-byline .text-link{overflow-wrap:anywhere}
.review-card{border:0;box-shadow:none;background:transparent}.review-card .review-text strong{color:var(--ink)}
.reviews-track:focus-within{animation-play-state:paused}
.reduced-motion .reviews-track{animation:none;transform:none;width:100%;display:block}
.reduced-motion .reviews-group{flex-wrap:wrap;gap:20px}.reduced-motion .reviews-repeat{display:none}
@media(max-width:700px){.catalogue-group>summary:has(.group-label){padding:22px 19px;gap:12px;grid-template-columns:minmax(0,1fr) auto 30px}.catalogue-group>summary:has(.group-label) .group-label{font-size:17px}.catalogue-group>.course-grid{padding:0 14px 16px;gap:14px}.catalogue-group .course-summary{padding-inline:18px}.catalogue-group .course-panel{padding-inline:18px}.review-card{width:min(345px,calc(100vw - 44px));min-width:min(345px,calc(100vw - 44px));padding-inline:15px}.reduced-motion .review-card{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.reviews-track{animation:none!important;transform:none!important;width:100%;display:block}.reviews-group{flex-wrap:wrap}.reviews-repeat{display:none}}
