/* Keep article tables, forms and comparison cards readable at phone widths. */
.section-article{min-width:0;overflow-wrap:break-word}
.section-article p{max-width:78ch}
.section-article p+p{margin-top:16px}
.section-article ul,.section-article ol{padding-inline-start:24px;margin:18px 0}
.section-article li+li{margin-top:9px}
.section-article table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.65}
.section-article th,.section-article td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line,#dce4eb)}
.section-article th{background:#f0f4f8;color:#142b49;font-weight:700}
.section-article .table-wrap{max-width:100%;overflow-x:auto;margin:20px 0}
.compare-card{min-width:0;padding:24px;overflow-wrap:anywhere}
.compare-card .course-info{grid-template-columns:minmax(0,1fr);gap:6px}
.compare-card .course-info dd{margin:0 0 14px}
.course-card,.catalogue-group,.planner-inputs,.planner-output,.key-data-cell{min-width:0}
.course-panel,.card-panel{overflow-wrap:break-word}
.hero{isolation:isolate}
.hero .film{position:absolute;inset:0;max-width:none;overflow:hidden;pointer-events:none}
.hero .film video{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.hero .film iframe{max-width:none;pointer-events:none}
.hero .hero-content{position:relative}
.reviews-window{max-width:100%;overflow:hidden}
.review-card{border:0!important;box-shadow:none!important}
@media(max-width:700px){
 .hero .film{inset:0!important;width:100%!important;height:100%!important;margin:0!important}
 .hero .hero-content{padding-top:125px}
 .section-article{font-size:15px;line-height:1.85}
 .section-article table{min-width:480px;font-size:14px}
 .section-article th,.section-article td{padding:13px 16px}
 .compare-card{padding:21px 20px}
 .key-data-grid{max-width:100%}
 .key-data-cell dd{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.hero .film{display:none!important}}

.reviews-track{--review-gap:35px;gap:var(--review-gap);animation:cd-review-flow 62s linear infinite}.review-band{display:flex;gap:var(--review-gap);align-items:flex-start}.reviews-track:hover,.reviews-track:focus-within,.reviews-track:has(details[open]){animation-play-state:paused}@keyframes cd-review-flow{from{transform:translateX(calc(-50% - var(--review-gap)/2))}to{transform:translateX(0)}}@media(max-width:700px){.reviews-track{--review-gap:15px}}.reduced-motion .reviews-track{animation:none!important;transform:none!important}
