/* CASS rating and individual payment options. */
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-rating{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;width:fit-content;max-width:100%;min-height:44px;margin-top:16px;padding:8px 0;font-size:14px;line-height:1.5;color:#d3e2da;text-decoration:none}
:is([data-cass-enrolment],[data-course-payment]) .cfp-rating-score{display:inline-flex;align-items:baseline;gap:8px;white-space:nowrap}
:is([data-cass-enrolment],[data-course-payment]) .cfp-rating-score strong{font-size:18px;font-weight:600;letter-spacing:-.025em;line-height:1.5;color:#f3f7f3;font-variant-numeric:tabular-nums}
:is([data-cass-enrolment],[data-course-payment]) .cfp-rating-dot{color:#9db9ac}
:is([data-cass-enrolment],[data-course-payment]) .cfp-rating-link{display:inline-flex;align-items:baseline;gap:7px;text-decoration:underline;text-decoration-color:#8eaaa0;text-underline-offset:4px;text-decoration-thickness:1px}
:is([data-cass-enrolment],[data-course-payment]) .cfp-rating:hover .cfp-rating-link{color:#c1f99b;text-decoration-color:currentColor}
/* The average rating has its own band between the reviews heading and the quotes (owner, 28 Sep 2026): a large figure
   with five brand slants for the five-point scale, then the sample, period and method. The quote mark keeps its
   corner. The method link reads at the size of its neighbours; the shared link contract would set it at 15px. */
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-figure{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:32px;padding:22px 0;margin:0 0 34px;border-block:1px solid #c8d7ca;color:#506b62}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-score{display:flex;align-items:flex-end;gap:18px}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-value{display:flex;align-items:baseline;gap:6px;margin:0;line-height:1;color:#203e3b;font-variant-numeric:tabular-nums}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-value strong{font-size:72px;font-weight:600;letter-spacing:-.06em;line-height:.8}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-value>span[aria-hidden]{font-size:22px;font-weight:500;letter-spacing:-.02em;color:#506b62}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-slants{display:block;flex:none;width:auto;height:18px;margin-bottom:3px;fill:#20b79b}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-slants .cfp-slant-rest{fill:#cadbcf}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 32px;padding-left:32px;border-left:1px solid #c8d7ca}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-basis{display:grid;gap:1px}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference :is(p,time){font-size:13px;line-height:1.55;font-weight:400;margin:0}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference .cfp-review-label{font-size:15px;font-weight:500;color:#203e3b;margin-bottom:3px}
/* The band's one sentence (house rule, 4 Oct 2026): its dates read in the sentence's own type. */
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference .cfp-review-label time{font:inherit;color:inherit}
:is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference a.brand-link{--ds-font-action:13px;--link-icon-size:14px;--link-gap:6px;min-height:24px;padding:0;font-weight:500;line-height:1.55;color:#203e3b}
@media(max-width:520px){
 :is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-rating{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;margin-top:16px}
 :is([data-cass-enrolment],[data-course-payment]) .cfp-rating-dot{display:none}
}

/* Payment flexibility sits with the total, inside the individual enrolment offer. */
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-offer{row-gap:12px}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-offer .pc-offer-heading{display:block}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-offer .pc-offer-heading>span{display:block;max-width:none;margin-top:5px;font-size:12px;line-height:1.5}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment{grid-column:1/-1;min-width:0}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-intro{font-size:14px;line-height:1.5;color:#d3e2da;margin:0}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-options{border:0;padding:0;margin:0;background:none}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-options>summary{display:flex;align-items:center;gap:10px;width:fit-content;min-height:36px;padding:6px 0!important;font-size:13px;font-weight:400;line-height:1.5;color:#d3e2da;text-decoration:underline;text-underline-offset:4px;list-style:none}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-options>summary::before,:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-options>summary::after{display:none!important;content:none!important}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-options>summary::-webkit-details-marker{display:none}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-options>summary svg{width:16px;height:16px;flex:none}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-options[open]>summary svg{transform:rotate(180deg)}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-detail{padding:10px 0 12px}
:is([data-cass-enrolment],[data-course-payment]) .cfp-payment-detail dl{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;max-width:56ch}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-detail dt{font-size:13px;font-weight:600;line-height:1.5;color:#f3f7f3}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-detail dd{font-size:13px;line-height:1.6;color:#bfd2c9;margin-top:4px}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-detail dd strong{font-weight:500;color:#f3f7f3}
:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-detail a{display:inline-flex;align-items:center;gap:8px;font-size:12px;text-decoration:underline;text-underline-offset:4px;color:#d3e2da;min-height:36px;padding:6px 0;margin-top:8px}
@media(max-width:650px){
 :is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-offer .pc-offer-heading>span{font-size:11px}
 :is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-options>summary{min-height:44px}
}

:is([data-cass-enrolment],[data-course-payment]) .programme-hero .cfp-payment-condition{max-width:56ch;margin:14px 0 0;font-size:13px;line-height:1.6;color:#bfd2c9}

@media(max-width:650px){
 :is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-figure{grid-template-columns:minmax(0,1fr);row-gap:16px;padding:20px 0;margin-bottom:26px}
 :is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-value strong{font-size:60px}
 :is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-value>span[aria-hidden]{font-size:20px}
 :is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-slants{height:16px}
 :is([data-cass-enrolment],[data-course-payment],[data-review-figure]) .cfp-review-reference{display:grid;justify-items:start;gap:10px;padding-left:0;border-left:0}
}
