/* Sizes are fixed choices. Font family and weight remain part of the central design. */
/* Heading colour follows the school palette; opaque cards reset the section context. */
.website-section{--website-heading-ink:var(--brand-deep,var(--ink))}
.website-section.website-bg-soft{--website-heading-ink:var(--brand-soft-heading,var(--block-soft-ink,var(--ink)))}
.website-section.website-bg-strong{--website-heading-ink:var(--brand-strong-heading,var(--block-strong-ink,var(--ink)))}
.website-section :is(.course-card,.website-offer-aside,.website-question),.website-section:not(.website-layout-strip) .website-tile,.website-section:not(.website-layout-illustrated) .quiz-block{--website-heading-ink:var(--brand-deep,var(--ink))}
html .website-sections .website-section:is(.website-bg-plain,.website-bg-soft,.website-bg-strong) :is(h1,h2,h3,h4,h5,h6){color:var(--website-heading-ink,var(--brand-deep,var(--ink)))}
.website-section .website-article>.website-heading{line-height:1.15;margin:0 0 20px;letter-spacing:normal}.website-section .website-article>.website-heading-s{font-size:clamp(22px,2.4vw,24px)}.website-section .website-article>.website-heading-m{font-size:clamp(26px,3vw,32px)}.website-section .website-article>.website-heading-l{font-size:clamp(30px,3.8vw,40px)}.website-section .website-article>.website-heading-xl{font-size:clamp(34px,4.4vw,48px)}.website-section .website-article>.website-heading-xxl{font-size:clamp(36px,5vw,64px)}.website-section .website-article>.website-subheading{line-height:1.5;letter-spacing:normal;margin:0 0 20px;overflow-wrap:anywhere}.website-section .website-article>.website-subheading-s{font-size:12px}.website-section .website-article>.website-subheading-m{font-size:clamp(14px,1.5vw,16px)}.website-section .website-article>.website-subheading-l{font-size:clamp(16px,1.8vw,20px)}
