/* University logo: preserve the complete lockup, including 1471. */
header,.presenting header{height:104px;background:#fff;padding-left:24px;padding-right:24px;gap:24px}
.brand{gap:22px;flex-shrink:0}
.brand .university-logo{display:block;width:184px;height:auto;max-height:86px;object-fit:contain}
.brand .course-brand{border-left:1px solid #bdd4dc;padding-left:22px}
.brand .course-brand>span{font-size:10px;letter-spacing:1.3px;color:#465f68}
.presenting .brand strong{font-size:23px}
.presenting .brand .course-brand>span{display:block}
.head-meta{gap:12px}
.week-sidebar{height:calc(100dvh - 104px)}
@media(min-width:751px){
 .presenting .app-shell,.presenting .week-sidebar{height:calc(100dvh - 104px)}
}
@media(max-width:1150px){
 .head-meta>span{display:none}
}
@media(max-width:750px){
 header,.presenting header{height:auto;min-height:108px;padding:10px 12px;gap:10px;flex-wrap:wrap}
 .brand{gap:14px}
 .brand .university-logo{width:152px;max-height:none}
 .brand .course-brand{padding-left:14px}
 .brand strong,.presenting .brand strong{font-size:21px}
 .brand .course-brand>span{font-size:8px;letter-spacing:.8px}
 .head-meta{gap:7px;margin-left:auto}
 .head-meta button{font-size:12px;padding:8px 10px}
.week-sidebar,.presenting .week-sidebar{height:100dvh}
}

/* Secondary identity color sampled from opaque pixels of the official logo. */
:root{--brand-red:#e62a36;--brand-red-ink:#9b1c28;--brand-red-soft:#fff0f2}
.brand .course-brand{border-left:2px solid var(--brand-red)}
.brand .course-brand strong{display:block;font-size:25px;line-height:1.2}
.brand .course-brand>span{font-size:15px;line-height:1.4;letter-spacing:.3px;color:var(--brand);font-weight:600;margin-top:6px}
.material-tabs button[aria-selected=true]{border-color:var(--brand-red);box-shadow:inset 0 0 0 1px var(--brand-red)}
.material-tabs button[aria-selected=true] b{background:var(--brand-red-soft);color:var(--brand-red-ink)}
.week-link[aria-current=page]{border-color:var(--brand-red);box-shadow:0 0 0 1px var(--brand-red)}
.week-link[aria-current=page] small{background:var(--brand-red-soft);color:var(--brand-red-ink)}
.unit-choices button[aria-pressed=true],.prediction button[aria-pressed=true]{border-color:var(--brand-red);box-shadow:inset 0 0 0 1px var(--brand-red)}
.controls select:focus,.transport select:focus{border-color:var(--brand-red)}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-color:var(--brand-red)}
.action:hover,.transport .play:hover{box-shadow:inset 0 -3px 0 var(--brand-red)}
.head-meta button:hover,.next:hover{border-color:var(--brand-red)}
@media(min-width:751px) and (max-width:1000px){
 header,.presenting header{gap:14px;padding-left:18px;padding-right:18px}
 .brand{gap:14px}
 .brand .university-logo{width:150px}
 .brand .course-brand{padding-left:14px}
 .brand .course-brand strong{font-size:21px}
 .head-meta{gap:7px}
 .head-meta button{font-size:13px;padding:8px 9px}
}
@media(max-width:750px){
 .brand{max-width:100%;min-width:0}
 .brand .university-logo{width:clamp(104px,32vw,152px);flex-shrink:0}
 .brand .course-brand{min-width:0}
 .brand .course-brand strong{font-size:clamp(18px,4.8vw,21px)}
 .brand .course-brand>span{font-size:14px;letter-spacing:.2px}
}

/* Revised classroom tasks: keep long prediction rules readable. */
.prediction-stacked{flex-direction:column}.prediction-stacked button{text-align:left;font-size:16px;line-height:1.4;padding:10px}.week-outcomes{max-width:780px;margin:24px auto;text-align:left;font-size:18px;line-height:1.65}.week-outcomes li{margin:10px 0}.intro{gap:20px}.intro h1{font-size:clamp(26px,2.4vw,35px)}.intro>p{max-width:310px}.scene-header{gap:12px}.scene-header span:last-child{white-space:nowrap}

/* Full lecturer byline stays readable without forcing header overflow. */
.brand .course-brand>span{max-width:330px;white-space:normal;overflow-wrap:normal}
@media(min-width:751px) and (max-width:1300px){.head-meta>span{display:none}}
@media(max-width:430px){.brand .university-logo{width:104px}.brand{gap:10px}.brand .course-brand{padding-left:10px}.brand .course-brand>span{font-size:14px;letter-spacing:0}}

@media(min-width:751px) and (max-width:1000px){.brand .course-brand>span{max-width:250px}}

/* Preserve the official alpha channel on the light institutional header. */
header,.presenting header{background:#f3f8fa}
.brand .university-logo{background:transparent;border:0;box-shadow:none;filter:none;mix-blend-mode:normal;opacity:1}
