/* Stage 2 v0.3. Learning format treatment only. Existing behaviour and copy retained. */
#formats .v02-format-selectors{min-height:0;gap:24px;margin-bottom:0}
#formats .v02-format-button{min-height:164px;grid-template-columns:42px 1fr 25px;padding:23px 25px;gap:17px;transition:none;box-shadow:none;border-bottom:4px solid transparent}
#formats .v02-format-button[data-format-select=foundation]{background:#eee8da;color:#003f34;border-color:#c6b994;border-bottom-color:transparent}
#formats .v02-format-button[data-format-select=foundation] small,#formats .v02-format-button[data-format-select=foundation] .v02-format-number{color:#756023}
#formats .v02-format-button[data-format-select=foundation]>span>span{color:#46594e}
#formats .v02-format-button[data-format-select=half-time]{background:#003f34;color:#fffdf7;border-color:#003f34;border-bottom-color:transparent}
#formats .v02-format-button[data-format-select=half-time] small,#formats .v02-format-button[data-format-select=half-time] .v02-format-number{color:#e5c16c}
#formats .v02-format-button[data-format-select=half-time]>span>span{color:#d6e2d5}
#formats .v02-format-button[data-format-select=half-time] .v02-format-number{font-size:49px;line-height:.9}
#formats .v02-format-button[data-format-select=half-time] strong{font-family:Arial,sans-serif;font-weight:700;font-size:27px;letter-spacing:-.045em;line-height:1.1}
#formats .v02-format-button[aria-pressed=true]{border-bottom-color:#a77c24;box-shadow:inset 0 -1px #a77c24}
#formats .v02-format-button[data-format-select=half-time][aria-pressed=true]{border-bottom-color:#e5c16c;box-shadow:inset 0 -1px #e5c16c}
#formats .v02-format-button[aria-pressed=true] .v02-format-indicator{color:inherit;transform:rotate(45deg)}
#formats .v02-format-button:focus-visible{outline:3px solid #79591d!important;outline-offset:4px}
#formats .v02-format-button[data-format-select=half-time]:focus-visible{outline-color:#b78629!important}
#formats .v02-catalogue{gap:24px}
#formats .v02-course-group{border:0;padding-top:0;transition:none}
#formats .v02-course-group-head{display:block;min-height:92px;padding:22px 0 18px;border-bottom:1px solid #c6b994;margin-bottom:18px}
#formats .v02-course-group-head h3{font-size:26px;line-height:1.15;white-space:normal}
#formats .v02-course-group-head p{text-align:left;max-width:none;color:#46594e;font-size:12px;line-height:1.6;margin-top:8px}
#half-time-courses .v02-course-group-head h3{font:700 23px/1.3 Arial,sans-serif;letter-spacing:-.035em}
#formats .course-card{box-shadow:none!important;transform:none!important;transition:none!important;margin-bottom:16px;position:relative;border-radius:0;min-height:0}
#foundation-courses .course-card{background:#eee8da;border:1px solid #c6b994;border-left:6px solid #b18a31;padding:22px 28px 20px;min-height:278px}
#foundation-courses .v02-course-top{margin-bottom:16px}
#foundation-courses .course-kind{color:#6b5420;font-size:9px;letter-spacing:.15em}
#foundation-courses .course-card h4{font:normal 34px/1.06 Georgia,serif;letter-spacing:-.035em;margin-bottom:13px;color:#003f34}
#foundation-courses .course-card p{color:#46594e;margin-bottom:15px}
#foundation-courses .course-features{gap:0;margin-bottom:14px;flex-wrap:wrap}
#foundation-courses .course-features span{border:0;border-radius:0;background:transparent;padding:0;color:#46594e;font-size:11px;line-height:1.8}
#foundation-courses .course-features span+span::before{content:'·';padding:0 9px;color:#756023}
#foundation-courses .course-features span:last-child{font-weight:700;color:#003f34}
#formats .v02-access-label{font-size:9px;line-height:1.4;color:#385747;background:#f9f6ed;border:1px solid #abb69b;padding:5px 7px}
#half-time-courses .course-card{background:#003f34;color:#fffdf7;border:1px solid #003f34;padding:18px 24px 16px;min-height:0}
#half-time-courses .v02-course-top{justify-content:flex-start;gap:10px;margin-bottom:10px}
#formats .v03-half-mark{display:flex;flex:0 0 31px;width:31px;height:31px;border:1px solid #8aa595;border-radius:50%;align-items:center;justify-content:center;font:normal 25px/.9 Georgia,serif;color:#e5c16c}
#half-time-courses .course-kind{font-size:9px;letter-spacing:.1em;color:#d4ddcf}
#formats .v03-duration{font:700 12px/1.3 Arial,sans-serif;color:#e5c16c;margin-left:auto;white-space:nowrap}
#half-time-courses .v02-access-label{position:absolute;bottom:26px;right:24px;background:transparent;border-color:#8aa595;color:#e2eadf}
#half-time-courses .course-card h4{font:700 28px/1.1 Arial,sans-serif;letter-spacing:-.04em;color:#fffdf7;margin-bottom:10px}
#half-time-courses .course-card p{color:#d6e2d5;font-size:15px;line-height:1.65;margin-bottom:12px;max-width:510px}
#half-time-courses .course-features{gap:7px;margin-bottom:10px}
#half-time-courses .course-features span{font-size:10px;line-height:1.5;padding:0 0 0 10px;border:0;border-left:2px solid #b9974c;border-radius:0;background:transparent;color:#d6e2d5}
#formats .course-card>a{width:100%;gap:12px;white-space:nowrap;border-top:1px solid #b8ac8b;padding-top:12px;min-height:44px;color:#003f34;display:flex;align-items:center;justify-content:space-between;text-decoration:none}
#half-time-courses .course-card>a{border-color:#678a75;color:#f5da92;padding-right:110px}
#formats .course-card>a:focus-visible{outline-color:#79591d!important}
#half-time-courses .course-card>a:focus-visible{outline-color:#f5da92!important}
#foundation-courses .course-card:focus-within{border-color:#79591d}
#half-time-courses .course-card:focus-within{border-color:#e5c16c}
@media(max-width:1180px){
 #formats .v02-format-button{grid-template-columns:30px 1fr 20px;padding:22px;gap:14px;min-height:170px}
 #formats .v02-format-button strong,#formats .v02-format-button[data-format-select=half-time] strong{font-size:26px}
 #foundation-courses .course-card{padding:23px 24px 20px}
 #half-time-courses .course-card{padding:19px 22px 17px}
 #half-time-courses .v02-access-label{right:22px}
}
@media(max-width:900px){
 #formats .v02-format-button{grid-template-columns:1fr 18px}
 #formats .v02-format-number{display:none}
 #formats .v02-course-top{flex-wrap:wrap}
 #half-time-courses .course-kind{font-size:8px}
 #formats .v03-duration{font-size:11px}
 #formats .v03-half-mark{flex-basis:26px;width:26px;height:26px;font-size:22px}
 #foundation-courses .course-card h4{font-size:31px}
 #half-time-courses .course-card h4{font-size:26px}
}
@media(max-width:640px){
 #formats .v02-format-selectors{gap:10px}
 #formats .v02-format-button{display:block;min-height:205px;padding:19px 15px 22px}
 #formats .v02-format-button strong,#formats .v02-format-button[data-format-select=half-time] strong{font-size:24px}
 #formats .v02-catalogue{gap:24px}
 #formats .v02-course-group-head{min-height:0;padding:21px 0 16px;margin-bottom:15px}
 #formats .v02-course-group-head h3{font-size:26px}
 #half-time-courses .v02-course-group-head h3{font-size:24px}
 #foundation-courses .course-card{padding:23px 22px 20px;min-height:0}
 #half-time-courses .course-card{padding:18px 20px 16px}
 #half-time-courses .v02-access-label{right:20px;bottom:25px}
 #half-time-courses .v02-course-top{gap:8px}
 #formats .v03-half-mark{flex-basis:27px;width:27px;height:27px;font-size:23px}
 #formats .v03-duration{font-size:11px}
}
@media(max-width:360px){
 #formats .v02-format-button{min-height:0;padding:21px 23px}
 #formats .v02-format-button strong,#formats .v02-format-button[data-format-select=half-time] strong{font-size:27px}
 #foundation-courses .course-card{padding:22px 18px 19px}
 #half-time-courses .course-card{padding:18px 18px 16px}
 #half-time-courses .v02-access-label{right:18px}
 #half-time-courses .v02-course-top{gap:7px}
 #half-time-courses .course-kind{letter-spacing:.035em}
 #formats .v03-duration{font-size:10px}
}
@media print{#formats .course-card{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}}

#formats .v02-course-group.is-emphasised .v02-course-group-head{box-shadow:inset 0 -3px #a77c24}
#formats .v02-course-group.is-emphasised .course-card{outline:2px solid #a77c24;outline-offset:-2px}

/* Reserve the enhanced controls at their exact responsive size before JS reveals them. */
#formats .v02-format-button[hidden]{display:var(--v03-control-display,grid)!important;visibility:hidden}
@media(max-width:640px){#formats .v02-format-button{--v03-control-display:block}}

#formats .course-card:last-child{margin-bottom:0}
