
/* V23 — refined All Courses layout. Scope prevents changes to other pages. */
.ac21-main{background:#f5f7fc!important}
.ac21-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#061832 0%,#0b2d62 66%,#0b3976 100%)!important;padding:66px 0 74px!important}
.ac21-hero::before{content:"";position:absolute;z-index:-1;width:500px;height:500px;right:-170px;top:-240px;border-radius:50%;background:radial-gradient(circle,#2a64a877,transparent 65%);pointer-events:none}
.ac21-hero::after{content:"";position:absolute;z-index:-1;width:290px;height:290px;left:-170px;bottom:-190px;border-radius:50%;background:radial-gradient(circle,#ff7c2022,transparent 70%);pointer-events:none}
.ac21-hero-inner{max-width:1180px!important;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr)!important;gap:clamp(30px,5vw,68px)!important}
.ac21-intro{min-width:0}
.ac21-eyebrow{letter-spacing:1.3px!important}
.ac21-intro h1{font-size:clamp(39px,4.2vw,61px)!important;letter-spacing:-1.7px!important;line-height:1.12!important;margin:19px 0 18px!important}
.ac21-intro>p{font-size:15px!important;line-height:1.78!important;max-width:570px!important;color:#d7e4f8!important}
.ac21-proof{margin-top:26px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 16px!important}
.ac21-proof span{font-size:12px!important;color:#dce8f9!important}
.ac21-btn{border-radius:11px!important}
.ac21-primary{background:#ff791b!important}
.ac21-hero .sj7-enquiry-card{max-width:480px!important;padding:26px!important;border-radius:22px!important;background:linear-gradient(155deg,#103b79,#09224b)!important;box-shadow:0 22px 62px #0004!important}
.ac21-hero .sj7-enquiry-head{margin-bottom:16px!important}
.ac21-hero .sj7-enquiry-head h2{font-size:25px!important;line-height:1.2!important}
.ac21-hero .sj7-form-slot{min-height:0}
.ac21-hero #sj7-inline-form-slot #enquiryForm{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
.ac21-hero #sj7-inline-form-slot #enquiryForm > :is(input:not([type=hidden]),select,textarea,button){margin:0!important;max-width:100%!important;min-width:0!important;width:100%!important;box-sizing:border-box!important}
.ac21-hero #sj7-inline-form-slot #enquiryForm > :is(select,textarea,button){grid-column:1/-1!important}
.ac21-hero #sj7-inline-form-slot #enquiryForm > :is(input:not([type=hidden]),select){height:46px!important;min-height:46px!important}
.ac21-hero #sj7-inline-form-slot #enquiryForm > textarea{min-height:75px!important;height:75px!important}
.ac21-hero .sj7-privacy{font-size:11px!important}
.ac21-catalog{padding:65px 0 70px!important}
.ac21-section-head{margin-bottom:24px!important;align-items:end!important}
.ac21-section-head h2{font-size:clamp(30px,3vw,43px)!important}
.ac21-search-wrap{width:min(360px,100%)!important}
#ac21-search{border-radius:12px!important;background:#fff!important}
.ac21-tabs{padding:5px 0 16px!important;gap:9px!important;margin-bottom:0!important}
.ac21-tabs button{border-radius:10px!important;padding:11px 15px!important;transition:background .2s,border-color .2s!important}
.ac21-tabs button.is-active{background:#103a79!important;border-color:#103a79!important}
.ac21-count{margin:0 0 26px!important;font-weight:650!important;color:#536b88!important}
.ac21-group{margin-bottom:44px!important}
.ac21-group-heading{padding-bottom:14px!important;border-bottom:1px solid #dce5f1!important;margin-bottom:18px!important}
.ac21-group-heading h3{font-size:24px!important}
.ac21-grid{gap:15px!important}
.ac21-card{position:relative;border:1px solid #dce5f0!important;border-radius:17px!important;min-height:225px!important;padding:21px!important;background:#fff!important;box-shadow:0 6px 18px #0d2a5210!important}
.ac21-card:hover{box-shadow:0 15px 34px #0d2a5220!important;border-color:#9fc2e8!important}
.ac21-card h4{font-size:17px!important;line-height:1.35!important}
.ac21-card>p{font-size:12px!important;line-height:1.65!important}
.ac21-card-bottom{padding-top:13px!important}
.ac21-card-bottom .ac21-enquire{border-radius:8px;background:#fff2e7!important;padding:8px 12px!important;color:#c4530b!important}
.ac21-card-bottom .ac21-enquire:hover{background:#ffe4cf!important}
.ac21-card[hidden],.ac21-group[hidden],.ac21-empty[hidden]{display:none!important}
.ac21-empty{font-size:14px!important;color:#435b79!important}
.ac21-cta{padding:36px 0!important;background:linear-gradient(115deg,#071a3b,#103b78)!important}
.ac21-cta h2{font-size:26px!important}
.ac21-cta p{line-height:1.65!important}
.ac21-main a:focus-visible,.ac21-main button:focus-visible,.ac21-main input:focus-visible{outline:3px solid #ff9c56!important;outline-offset:3px!important}
@media(max-width:980px){.ac21-hero-inner{grid-template-columns:1fr!important;gap:26px!important}.ac21-hero .sj7-enquiry-card{max-width:590px!important;margin:0 auto!important}.ac21-intro{max-width:700px!important}.ac21-hero{padding:48px 0!important}}
@media(max-width:700px){.ac21-hero{padding:36px 0 42px!important}.ac21-intro h1{font-size:clamp(34px,9vw,47px)!important;letter-spacing:-1px!important}.ac21-intro>p{font-size:14px!important}.ac21-proof{grid-template-columns:1fr!important;gap:9px!important;margin-top:19px!important}.ac21-hero .sj7-enquiry-card{padding:20px 17px!important;width:100%!important;max-width:100%!important}.ac21-hero #sj7-inline-form-slot #enquiryForm{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.ac21-hero #sj7-inline-form-slot #enquiryForm > :is(input:not([type=hidden]),select,textarea,button){grid-column:1/-1!important}.ac21-section-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important}.ac21-catalog{padding:42px 0!important}.ac21-grid{grid-template-columns:1fr!important}.ac21-card{min-height:0!important}.ac21-group-heading{align-items:flex-start!important}.ac21-cta-inner{flex-direction:column!important;align-items:stretch!important}.ac21-cta .ac21-btn{width:100%!important;white-space:normal!important}}
@media(prefers-reduced-motion:reduce){.ac21-card,.ac21-tabs button{transition:none!important}}
