:root {
  --ink: #14213d;
  --muted: #5f6b7a;
  --surface: #ffffff;
  --soft: #f5f7fb;
  --line: #dde3ec;
  --brand: #0c7c86;
  --brand-dark: #075e66;
  --accent: #f4a261;
  --success: #1f8a5b;
  --shadow: 0 18px 45px rgba(20, 33, 61, 0.10);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--surface);
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
.container { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.topbar { background: var(--ink); color: #fff; font-size: 0.92rem; }
.topbar .container { padding: 9px 0; display: flex; justify-content: center; text-align: center; }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.94); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.nav { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; font-size: 1.25rem; letter-spacing: -0.02em; }
.brand-mark { width: 38px; height: 38px; border-radius: 10px; background: linear-gradient(135deg, var(--brand), var(--brand-dark)); display: grid; place-items: center; color: #fff; font-size: 1.1rem; }
.nav-links { display: flex; gap: 24px; align-items: center; font-weight: 600; color: #334155; }
.nav-links a:hover { color: var(--brand-dark); }
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 20px; border-radius: 10px; border: 1px solid transparent; font-weight: 800; cursor: pointer; transition: .2s ease; }
.btn-primary { color: #fff; background: var(--brand); }
.btn-primary:hover { background: var(--brand-dark); transform: translateY(-1px); }
.btn-secondary { background: #fff; border-color: var(--line); color: var(--ink); }
.btn-secondary:hover { border-color: #b8c2d1; }
.hero { background: radial-gradient(circle at 80% 10%, rgba(12,124,134,.13), transparent 36%), linear-gradient(180deg, #fbfdff, #f6f9fc); padding: 76px 0 64px; border-bottom: 1px solid var(--line); }
.hero-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 48px; align-items: center; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; padding: 7px 11px; border-radius: 999px; background: #e7f7f8; color: var(--brand-dark); font-size: .86rem; font-weight: 800; }
h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1.02; letter-spacing: -0.045em; margin: 18px 0 20px; }
.lead { font-size: 1.18rem; color: var(--muted); max-width: 720px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.trust-row { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 24px; color: #465468; font-size: .95rem; }
.trust-row span { display: inline-flex; gap: 7px; align-items: center; }
.search-card { background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 26px; box-shadow: var(--shadow); }
.search-card h2 { margin: 0 0 5px; font-size: 1.35rem; }
.search-card p { margin: 0 0 20px; color: var(--muted); }
.field { margin-bottom: 14px; }
label { display: block; font-size: .88rem; font-weight: 800; margin-bottom: 6px; }
input, select, textarea { width: 100%; border: 1px solid #cfd7e3; background: #fff; color: var(--ink); border-radius: 10px; min-height: 46px; padding: 10px 12px; font: inherit; }
textarea { min-height: 112px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(12,124,134,.14); border-color: var(--brand); }
.section { padding: 74px 0; }
.section.soft { background: var(--soft); }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 30px; }
.section-head h2 { font-size: clamp(1.8rem, 3vw, 2.7rem); margin: 0; letter-spacing: -0.03em; }
.section-head p { max-width: 620px; margin: 0; color: var(--muted); }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.card { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 22px; box-shadow: 0 9px 28px rgba(20,33,61,.05); }
.course-card { display: flex; flex-direction: column; min-height: 100%; }
.course-badge { width: fit-content; padding: 5px 9px; border-radius: 999px; background: #edf7f4; color: var(--success); font-size: .78rem; font-weight: 900; }
.course-card h3 { margin: 14px 0 6px; font-size: 1.35rem; }
.course-card p { color: var(--muted); margin: 0 0 18px; }
.meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.meta span { padding: 6px 8px; background: var(--soft); border-radius: 8px; font-size: .8rem; font-weight: 700; color: #4a586d; }
.card-link { margin-top: 18px; color: var(--brand-dark); font-weight: 900; }
.subcourses { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 4px 0 18px; }
.subcourses a { display: flex; flex-direction: column; gap: 4px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--soft); text-decoration: none; transition: transform .15s ease, border-color .15s ease; }
.subcourses a:hover { transform: translateY(-1px); border-color: var(--brand); }
.subcourses strong { color: var(--ink); font-size: .95rem; }
.subcourses span { color: var(--brand-dark); font-size: .82rem; font-weight: 800; }

.steps { counter-reset: step; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.step { position: relative; padding: 24px 24px 24px 74px; background: #fff; border: 1px solid var(--line); border-radius: 16px; }
.step::before { counter-increment: step; content: counter(step); position: absolute; left: 22px; top: 24px; width: 36px; height: 36px; border-radius: 50%; background: var(--brand); color: #fff; display: grid; place-items: center; font-weight: 900; }
.step h3 { margin: 0 0 7px; }
.step p { margin: 0; color: var(--muted); }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: start; }
.checklist { list-style: none; padding: 0; margin: 22px 0 0; }
.checklist li { padding: 8px 0 8px 30px; position: relative; }
.checklist li::before { content: "✓"; position: absolute; left: 0; color: var(--success); font-weight: 900; }
.provider-panel { background: var(--ink); color: #fff; border-radius: 22px; padding: 34px; }
.provider-panel p { color: #cfdaea; }
.provider-panel .btn-secondary { border-color: transparent; }
.faq { display: grid; gap: 12px; }
details { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 16px 18px; }
summary { cursor: pointer; font-weight: 800; }
details p { color: var(--muted); margin-bottom: 0; }
.form-note { color: var(--muted); font-size: .86rem; margin-top: 10px; }
.notice { margin-top: 18px; padding: 13px 15px; border-radius: 10px; background: #fff8ee; border: 1px solid #f3d7ad; color: #765021; font-size: .9rem; }
footer { background: #0e172a; color: #d7dfeb; padding: 44px 0 22px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 30px; }
footer h4 { color: #fff; margin: 0 0 10px; }
footer a { display: block; margin: 6px 0; color: #d7dfeb; }
.footer-bottom { margin-top: 30px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.13); font-size: .85rem; color: #9eacc0; display: block; }
.footer-bottom > span { display: block; margin-top: 7px; }
.footer-bottom > span:first-child { margin-top: 0; }
.page-hero { padding: 58px 0 38px; background: var(--soft); border-bottom: 1px solid var(--line); }
.page-hero h1 { font-size: clamp(2.2rem, 4vw, 3.6rem); margin-bottom: 12px; }
.prose { max-width: 820px; }
.prose h2 { margin-top: 34px; }
.prose p, .prose li { color: #465468; }
.mobile-toggle { display: none; background: transparent; border: 0; font-size: 1.5rem; }
.hidden { display: none !important; }
@media (max-width: 860px) {
  .hero-grid, .split, .footer-grid { grid-template-columns: 1fr; }
  .grid-3, .steps { grid-template-columns: 1fr 1fr; }
  .nav-links { display: none; position: absolute; top: 72px; left: 0; right: 0; padding: 16px 20px 22px; background: #fff; border-bottom: 1px solid var(--line); flex-direction: column; align-items: flex-start; }
  .nav-links.open { display: flex; }
  .mobile-toggle { display: block; }
}
@media (max-width: 620px) {
  .container { width: min(100% - 28px, 1120px); }
  .hero { padding-top: 48px; }
  .grid-3, .steps { grid-template-columns: 1fr; }
  .section-head { align-items: start; flex-direction: column; }
  .hero-actions .btn { width: 100%; }
}


.breadcrumbs { font-size: .9rem; color: var(--muted); margin-bottom: 14px; }
.breadcrumbs a { color: var(--brand-dark); font-weight: 700; }
.content-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 36px; align-items: start; }
.info-panel { background: var(--soft); border: 1px solid var(--line); border-radius: 16px; padding: 22px; position: sticky; top: 96px; }
.info-panel h3 { margin-top: 0; }
.info-panel .btn { width: 100%; margin-top: 12px; }
.fact-list { list-style: none; margin: 0; padding: 0; }
.fact-list li { padding: 10px 0; border-bottom: 1px solid var(--line); color: #465468; }
.fact-list li:last-child { border-bottom: 0; }
.choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 22px 0; }
.choice-card { display: block; border: 1px solid var(--line); border-radius: 14px; padding: 20px; background: #fff; }
.choice-card:hover { border-color: var(--brand); box-shadow: 0 8px 24px rgba(20,33,61,.07); }
.choice-card h3 { margin: 0 0 6px; }
.choice-card p { margin: 0; color: var(--muted); }
.source-note { font-size: .88rem; color: var(--muted); }
.source-note a { color: var(--brand-dark); font-weight: 700; }
@media (max-width: 860px) { .content-grid { grid-template-columns: 1fr; } .info-panel { position: static; } }
@media (max-width: 620px) { .choice-grid { grid-template-columns: 1fr; } }


/* Schedule & commercial SEO additions */
.availability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.availability-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 9px 28px rgba(20,33,61,.05)}.availability-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.availability-head h3{font-size:1.4rem;margin:10px 0 0}.big-price{font-size:1.55rem;white-space:nowrap}.availability-card>p{color:var(--muted);margin:12px 0}.mini-dates{list-style:none;padding:0;margin:16px 0 4px;border-top:1px solid var(--line)}.mini-dates li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.mini-dates a{font-weight:800;color:var(--brand-dark)}.price-list{display:grid;gap:0}.price-list a{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--line)}.price-list a:last-child{border-bottom:0}.price-list strong{color:var(--brand-dark)}.price-strip{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;padding-top:14px}.price-strip strong{font-size:1.35rem}.price-strip span{font-size:.86rem;color:var(--muted)}.hero-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:26px}.hero-facts>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 14px}.hero-facts span{display:block;color:var(--muted);font-size:.8rem;font-weight:700}.hero-facts strong{display:block;margin-top:3px}.schedule-controls{display:flex;gap:14px;margin:0 0 18px}.schedule-controls.multi{flex-wrap:wrap}.schedule-controls label{min-width:210px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.schedule-table{width:100%;border-collapse:collapse;min-width:760px}.schedule-table th,.schedule-table td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.schedule-table th{background:#f1f5f9;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#475569;position:sticky;top:0}.schedule-table tbody tr:last-child td{border-bottom:0}.schedule-table tr[data-status="past"]{opacity:.58}.schedule-table .price{font-weight:900}.btn-small{min-height:36px;padding:0 12px;border-color:var(--brand);color:var(--brand-dark);background:#fff;font-size:.86rem}.mobile-label{display:none;font-size:.78rem;color:var(--muted);font-weight:500;margin-top:2px}.cta-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--soft)}.cta-panel h2{margin:8px 0 4px}.cta-panel p{margin:0;color:var(--muted)}
@media(max-width:860px){.availability-grid{grid-template-columns:1fr}.hero-facts{grid-template-columns:repeat(2,1fr)}.cta-panel{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.hero-facts{grid-template-columns:1fr 1fr}.schedule-table{min-width:660px}.mobile-label{display:block}.availability-head{align-items:center}}


/* SiteCourses brand refresh: safety yellow + charcoal + trust blue */
:root{
  --ink:#111827;
  --muted:#6B7280;
  --surface:#ffffff;
  --soft:#F8FAFC;
  --line:#E5E7EB;
  --brand:#FFC107;
  --brand-dark:#D99B00;
  --accent:#2563EB;
  --success:#16835D;
  --shadow:0 18px 45px rgba(17,24,39,.11);
}
.topbar{background:#111827;color:#fff}
.site-header{border-bottom-color:#E5E7EB}
.brand-logo{gap:10px;line-height:1}
.brand-icon{width:46px;height:46px;object-fit:cover;border-radius:10px;box-shadow:0 4px 12px rgba(17,24,39,.14)}
.brand-lockup{display:flex;flex-direction:column;gap:2px}
.brand-word{display:inline-flex;align-items:baseline;font-weight:900;font-size:1.28rem;letter-spacing:-.045em}
.brand-site{color:#111827}.brand-courses{color:#D99B00}
.brand-lockup small{font-size:.56rem;letter-spacing:.13em;text-transform:uppercase;color:#6B7280;font-weight:800;white-space:nowrap}
.nav-links a:hover{color:#B27F00}
.btn-primary{background:#FFC107;color:#111827;border-color:#FFC107;box-shadow:0 8px 22px rgba(255,193,7,.22)}
.btn-primary:hover{background:#E7AF00;color:#111827}
.btn-secondary:hover{border-color:#FFC107}
.eyebrow{background:#FFF6CF;color:#765900}
input:focus,select:focus,textarea:focus{outline-color:rgba(255,193,7,.22);border-color:#D99B00}
.card-link,.breadcrumbs a,.source-note a,.mini-dates a{color:#174EA6}
.course-badge{background:#EEF4FF;color:#174EA6}
.step::before{background:#FFC107;color:#111827}
.brand-mark{background:#FFC107;color:#111827}

.branded-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#F8FAFC 100%);padding:64px 0 58px}
.branded-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,193,7,.07),transparent 38%);pointer-events:none}
.branded-hero .hero-grid{grid-template-columns:1.02fr .98fr;gap:46px}
.hero-copy{position:relative;z-index:2}
.branded-hero h1{font-size:clamp(2.7rem,5vw,4.7rem);max-width:720px}
.hero-highlight{color:#D99B00}
.hero-visual{position:relative;min-height:500px;border:1px solid #E5E7EB;border-radius:28px;overflow:hidden;background:linear-gradient(145deg,#FFFDF4 0%,#FFF2B7 54%,#F3F4F6 100%);box-shadow:0 28px 70px rgba(17,24,39,.14)}
.hero-disc{position:absolute;border-radius:50%;filter:blur(.1px)}
.hero-disc-one{width:360px;height:360px;right:-90px;top:-75px;background:#FFC107;opacity:.42}
.hero-disc-two{width:210px;height:210px;left:35px;bottom:-110px;background:#2563EB;opacity:.08}
.hero-worker{position:absolute;z-index:2;height:91%;width:auto;right:2.5%;bottom:0;filter:drop-shadow(0 15px 18px rgba(17,24,39,.16))}
.hero-visual-copy{position:absolute;z-index:4;top:34px;left:30px;width:48%}
.hero-kicker{font-size:.74rem;letter-spacing:.16em;font-weight:900;color:#6B7280}
.hero-visual-copy>strong{display:block;margin-top:12px;font-size:clamp(2rem,3.2vw,3.2rem);line-height:.98;letter-spacing:-.045em;color:#111827}
.hero-price-pills{display:flex;flex-direction:column;gap:8px;margin-top:24px;max-width:205px}
.hero-price-pills a{display:flex;justify-content:space-between;gap:12px;background:rgba(255,255,255,.9);border:1px solid rgba(17,24,39,.1);padding:9px 11px;border-radius:10px;font-size:.84rem;font-weight:800;box-shadow:0 7px 20px rgba(17,24,39,.06)}
.hero-price-pills b{color:#174EA6}
.hero-qual-card{position:absolute;z-index:5;right:22px;bottom:22px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:270px}
.hero-qual-card span{background:#111827;color:#fff;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:800;letter-spacing:.02em;box-shadow:0 5px 14px rgba(17,24,39,.16)}
.page-hero{background:linear-gradient(180deg,#FFFBEA,#F8FAFC)}
footer{background:#111827}
footer .brand-word{font-size:1.2rem}.footer-grid{grid-template-columns:1.35fr 1fr 1fr 1fr}

@media(max-width:860px){
  .branded-hero .hero-grid{grid-template-columns:1fr}
  .hero-visual{min-height:470px}
  .hero-worker{height:88%}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .brand-lockup small{display:none}
  .brand-icon{width:40px;height:40px}
  .brand-word{font-size:1.12rem}
  .hero-visual{min-height:430px}
  .hero-visual-copy{left:20px;top:24px;width:52%}
  .hero-worker{height:78%;right:-8%}
  .hero-qual-card{right:14px;bottom:14px;max-width:230px}
  .hero-price-pills{max-width:185px}
  .footer-grid{grid-template-columns:1fr}
}

footer .brand-site{color:#FFFFFF}
footer .brand-courses{color:#FFC107}
footer .brand-lockup small{color:#94A3B8}


/* Booking terms and checkout */
.legal-prose{max-width:900px}.legal-prose h2{padding-top:10px;border-top:1px solid var(--line)}.legal-prose h3{margin-top:22px}.legal-warning{margin:0 0 26px;background:#FFF8DC;border-color:#F0CF62;color:#5E4A00}.blank-form{list-style:none;padding:0}.blank-form li{padding:8px 0;border-bottom:1px solid var(--line)}
.checkout-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:26px;align-items:start}.checkout-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 10px 30px rgba(17,24,39,.06)}.checkout-card h2{margin-top:0}.booking-summary{position:sticky;top:96px}.summary-list{margin:0}.summary-list>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.summary-list dt{color:var(--muted);font-weight:700}.summary-list dd{margin:0;text-align:right;font-weight:850}.checkout-total{font-size:1.3rem;color:#174EA6}.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.consent-box{border:1px solid var(--line);background:#F8FAFC;border-radius:12px;padding:15px;margin:16px 0}.early-consent{background:#FFF8DC;border-color:#F0CF62}.consent-kicker{display:block;font-size:.77rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:#765900;margin-bottom:10px}.consent-check{display:flex;gap:11px;align-items:flex-start;margin:0;font-weight:650;line-height:1.5}.consent-check input{width:20px;min-width:20px;height:20px;min-height:20px;margin:2px 0 0;padding:0}.consent-check a{text-decoration:underline}.checkout-status{min-height:48px;padding:12px 14px;border-radius:10px;background:#F1F5F9;color:#475569;font-size:.9rem;margin:16px 0}.checkout-pay{width:100%;min-height:50px}.checkout-pay:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.secure-note{text-align:center;color:var(--muted);font-size:.82rem;margin:12px 0 0}.success-panel{max-width:760px;margin:40px auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:48px 34px;box-shadow:var(--shadow)}.success-icon{display:grid;place-items:center;margin:0 auto 18px;width:64px;height:64px;border-radius:50%;background:#EAF8F1;color:#16835D;font-size:2rem;font-weight:900}
@media(max-width:860px){.checkout-layout{grid-template-columns:1fr}.booking-summary{position:static}}@media(max-width:620px){.checkout-grid{grid-template-columns:1fr}.checkout-card{padding:20px}.summary-list>div{flex-direction:column;gap:4px}.summary-list dd{text-align:left}}

/* Remote course equipment requirements */
.remote-requirements{margin:30px 0;padding:22px 24px;border:1px solid #F0CF62;border-left:5px solid #FFC107;border-radius:14px;background:#FFFBEA}.remote-requirements h2{margin-top:0}.remote-requirements ul{margin:10px 0 14px;padding-left:22px}.remote-requirements li{margin:7px 0}.device-warning{margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#111827;color:#fff!important}.device-warning strong{color:#fff}

.brand-tagline{margin:12px 0 6px;color:#0f172a;letter-spacing:.01em}


/* v12 homepage offering panel: crisp HTML pricing + centred brand artwork */
.brand-icon{object-position:center center}
.hero-worker{filter:drop-shadow(0 6px 7px rgba(17,24,39,.08));height:86%;right:-3%;image-rendering:auto}
.hero-visual{min-height:540px}
.hero-visual-copy{width:66%;max-width:365px;top:30px;left:28px}
.hero-kicker{font-size:.70rem;letter-spacing:.13em}
.hero-visual-copy>strong{font-size:clamp(1.9rem,3vw,2.75rem);margin-top:10px}
.hero-course-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;max-width:350px}
.hero-course-grid a,.hero-nvq-row a{background:rgba(255,255,255,.96);border:1px solid rgba(17,24,39,.11);box-shadow:0 6px 14px rgba(17,24,39,.05);color:#111827;text-decoration:none}
.hero-course-grid a{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:10px;padding:9px 10px;font-size:.78rem;font-weight:850}
.hero-course-grid b,.hero-nvq-row b{color:#174EA6;white-space:nowrap}
.hero-nvq-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px;max-width:350px}
.hero-nvq-row a{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border-radius:10px;padding:8px 8px;font-size:.70rem;font-weight:850;line-height:1.15}
.hero-nvq-row a.gold{border-color:rgba(217,155,0,.38);background:rgba(255,249,219,.97)}
.hero-nvq-row b{font-size:.72rem}
.hero-qual-card{right:18px;bottom:16px}

@media(max-width:860px){
  .hero-visual{min-height:520px}
  .hero-worker{height:83%;right:-1%}
  .hero-visual-copy{width:64%;max-width:355px}
}
@media(max-width:620px){
  .hero-visual{min-height:500px}
  .hero-visual-copy{left:16px;top:20px;width:72%;max-width:325px}
  .hero-course-grid,.hero-nvq-row{max-width:315px}
  .hero-course-grid a{font-size:.72rem;padding:8px}
  .hero-nvq-row a{font-size:.65rem;padding:7px 6px}
  .hero-worker{height:69%;right:-12%;bottom:0}
  .hero-qual-card{right:10px;bottom:10px;max-width:218px}
}

/* v13 SiteCourses Assistant */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.sitecourses-assistant{position:fixed;right:22px;bottom:22px;z-index:9999;font-family:inherit}
.assistant-launch{display:flex;align-items:center;gap:9px;border:0;border-radius:999px;background:#FFC107;color:#111827;padding:13px 18px;font:800 .95rem/1 inherit;box-shadow:0 12px 30px rgba(17,24,39,.20);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.assistant-launch:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(17,24,39,.24)}
.assistant-launch-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#111827}
.assistant-launch-icon svg{width:15px;height:15px;fill:none;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.assistant-panel{position:absolute;right:0;bottom:62px;width:min(390px,calc(100vw - 28px));height:min(690px,calc(100vh - 100px));background:#fff;border:1px solid #E5E7EB;border-radius:20px;box-shadow:0 24px 70px rgba(17,24,39,.24);overflow:hidden}
.assistant-panel[hidden]{display:none}
.assistant-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;background:#111827;color:#fff}
.assistant-brand{display:flex;align-items:center;gap:10px;min-width:0}
.assistant-brand img{width:38px;height:38px;border-radius:10px;object-fit:cover;object-position:50% 50%;background:#FFC107;display:block}
.assistant-brand strong,.assistant-brand span{display:block}.assistant-brand strong{font-size:.98rem}.assistant-brand span{margin-top:2px;color:#CBD5E1;font-size:.74rem}
.assistant-close{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.10);color:#fff;font-size:1.45rem;cursor:pointer}
.assistant-body{height:calc(100% - 168px);overflow:auto;background:#F8FAFC}
.assistant-messages{padding:16px 14px 6px;display:flex;flex-direction:column;gap:12px}
.assistant-message{max-width:92%;font-size:.88rem;line-height:1.48}
.assistant-message.user{align-self:flex-end;background:#111827;color:#fff;border-radius:15px 15px 4px 15px;padding:10px 12px;max-width:84%}
.assistant-message.bot{align-self:flex-start;display:flex;align-items:flex-start;gap:8px;max-width:96%}
.assistant-avatar{flex:0 0 29px;width:29px;height:29px;border-radius:8px;overflow:hidden;margin-top:2px;border:1px solid #E4B600;background:#FFC107;display:grid;place-items:center}
.assistant-avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block;background:#FFC107}
.assistant-bubble{background:#fff;border:1px solid #E5E7EB;border-radius:4px 15px 15px 15px;padding:11px 12px;color:#1F2937;box-shadow:0 3px 10px rgba(17,24,39,.04)}
.assistant-bubble p{margin:0 0 8px}.assistant-bubble p:last-child{margin-bottom:0}.assistant-bubble ul{margin:6px 0 8px;padding-left:18px}.assistant-bubble li{margin:3px 0}
.assistant-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.assistant-inline-link{display:inline-flex;align-items:center;border:1px solid #E1B000;background:#FFF7D1;color:#553E00!important;text-decoration:none!important;border-radius:999px;padding:6px 9px;font-weight:800;font-size:.78rem}
.assistant-suggestions{padding:10px 14px 17px}.assistant-suggestions>strong{display:block;color:#475569;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.assistant-chips{display:flex;flex-wrap:wrap;gap:7px}.assistant-chip,.assistant-more{border:1px solid #D7DEE7;background:#fff;color:#253247;border-radius:999px;padding:7px 9px;font:700 .76rem/1.3 inherit;text-align:left;cursor:pointer}.assistant-chip:hover,.assistant-more:hover{border-color:#E1B000;background:#FFFBEA}.assistant-more{margin-top:9px;background:transparent;border-style:dashed;color:#64748B}
.assistant-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid #E5E7EB}.assistant-form input{width:100%;min-width:0;border:1px solid #CBD5E1;border-radius:12px;padding:10px 11px;font:500 .88rem inherit;outline:none}.assistant-form input:focus{border-color:#DDAA00;box-shadow:0 0 0 3px rgba(255,193,7,.18)}.assistant-form button{border:0;border-radius:12px;background:#FFC107;color:#111827;padding:0 15px;font:850 .85rem inherit;cursor:pointer}.assistant-note{height:34px;display:flex;align-items:center;padding:0 12px;background:#fff;color:#64748B;font-size:.68rem;border-top:1px solid #F1F5F9}
@media(max-width:620px){.sitecourses-assistant{right:12px;bottom:12px}.assistant-launch{padding:12px 15px}.assistant-panel{position:fixed;right:8px;left:8px;bottom:72px;width:auto;height:min(72vh,650px);border-radius:18px}.assistant-body{height:calc(100% - 168px)}}


/* v18 homepage visual balance + conversion block */
.hero-visual{min-height:510px}
.hero-worker{height:90%;right:.5%;bottom:0;filter:drop-shadow(0 4px 5px rgba(17,24,39,.065))}
.hero-visual-copy{width:67%;max-width:372px}
.hero-course-grid{max-width:360px}
.hero-nvq-row{max-width:360px;gap:8px}
.hero-nvq-row a{padding:10px 9px;font-size:.73rem;min-height:48px;justify-content:center}
.hero-nvq-row b{font-size:.76rem}
.hero-trust-block{position:absolute;z-index:5;left:28px;bottom:25px;width:225px}
.hero-trust-points{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px}
.hero-trust-points span{display:flex;align-items:center;gap:6px;color:#374151;font-size:.69rem;font-weight:800;line-height:1.15}
.hero-trust-points span:before{content:"✓";display:grid;place-items:center;width:17px;height:17px;min-width:17px;border-radius:50%;background:#FFC107;color:#111827;font-size:.68rem;font-weight:950}
.hero-dates-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 13px;border-radius:11px;background:#FFC107;color:#111827;font-size:.78rem;font-weight:900;text-decoration:none;box-shadow:0 8px 18px rgba(217,155,0,.16);transition:transform .18s ease,box-shadow .18s ease}
.hero-dates-cta:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(217,155,0,.22)}
.hero-dates-cta b{font-size:1rem}
.hero-qual-card{right:16px;bottom:18px;gap:6px;max-width:255px}
.hero-qual-card span{padding:6px 9px;font-size:.68rem;box-shadow:0 4px 10px rgba(17,24,39,.12)}

@media(max-width:860px){
  .hero-visual{min-height:500px}
  .hero-worker{height:88%;right:0}
  .hero-trust-block{left:24px;bottom:24px;width:215px}
}
@media(max-width:620px){
  .hero-visual{min-height:480px}
  .hero-worker{height:73%;right:-8%}
  .hero-visual-copy{left:16px;top:18px;width:74%;max-width:330px}
  .hero-course-grid,.hero-nvq-row{max-width:320px}
  .hero-nvq-row a{min-height:44px;padding:8px 6px;font-size:.65rem}
  .hero-nvq-row b{font-size:.68rem}
  .hero-trust-block{left:16px;bottom:18px;width:190px}
  .hero-trust-points{gap:5px;margin-bottom:8px}
  .hero-trust-points span{font-size:.62rem}
  .hero-trust-points span:before{width:15px;height:15px;min-width:15px;font-size:.6rem}
  .hero-dates-cta{padding:9px 11px;font-size:.72rem}
  .hero-qual-card{right:8px;bottom:12px;gap:4px;max-width:205px}
  .hero-qual-card span{padding:5px 7px;font-size:.61rem}
}

/* VAT clarity */
.vat-inline{display:block;font-size:.68rem;font-weight:700;line-height:1.1;color:#64748b;margin-top:2px;white-space:nowrap}
.vat-table{display:block;font-size:.7rem;font-weight:700;color:#64748b;line-height:1.2;margin-top:2px;white-space:nowrap}
.hero-vat-note{position:absolute;left:30px;top:314px;font-size:.72rem;font-weight:800;letter-spacing:.02em;color:#475569;z-index:3}
@media (max-width:900px){.hero-vat-note{left:28px;top:314px}}
@media (max-width:640px){.hero-vat-note{left:28px;top:307px;font-size:.68rem}}

/* v21 VAT pricing */
.hero-vat-total{display:block;color:#64748b;font-size:.58rem;font-weight:750;line-height:1.1;margin-top:2px;text-align:right}.hero-nvq-row .hero-vat-total{text-align:left;font-size:.56rem}.vat-inline{white-space:normal}.big-price .vat-inline{font-size:.62rem}

/* Footer accreditation and delivery statement */
.footer-accreditation{margin-top:28px;padding:20px 22px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.035);max-width:100%}
.footer-accreditation h4{margin:0 0 10px;color:#fff;font-size:.98rem}
.footer-accreditation p{margin:7px 0;color:#b7c3d4;font-size:.86rem;line-height:1.6;max-width:1080px}
@media(max-width:620px){.footer-accreditation{padding:17px 16px}.footer-accreditation p{font-size:.82rem}}

/* v23 cleaner homepage offer panel */
.hero-visual{min-height:505px}
.hero-visual-copy{width:64%;max-width:360px;top:30px;left:28px}
.hero-course-grid{margin-top:18px;max-width:354px;gap:8px}
.hero-course-grid a{min-height:46px;padding:10px 11px;font-size:.78rem}
.hero-course-grid b{font-size:.78rem}
.hero-nvq-row{max-width:354px;gap:8px;margin-top:9px}
.hero-nvq-row a{min-height:54px;padding:9px 9px;font-size:.71rem;justify-content:center}
.hero-nvq-row b{font-size:.73rem}
.hero-vat-note{position:static;margin-top:9px;padding:0;font-size:.66rem;font-weight:750;letter-spacing:.005em;line-height:1.25;color:#64748b;max-width:330px}
.hero-worker{height:88%;right:-1.5%;bottom:0;filter:drop-shadow(0 3px 4px rgba(17,24,39,.05))}
.hero-trust-block{left:28px;bottom:24px;width:242px}
.hero-trust-line{display:flex;flex-wrap:wrap;gap:6px 10px;margin-bottom:11px;color:#374151;font-size:.68rem;font-weight:850;line-height:1.2}
.hero-trust-line span{white-space:nowrap}
.hero-dates-cta{padding:11px 14px;font-size:.78rem}
.hero-qual-card{display:none!important}

@media(max-width:860px){
  .hero-visual{min-height:500px}
  .hero-visual-copy{width:64%;max-width:350px}
  .hero-worker{height:84%;right:-3%}
  .hero-trust-block{left:24px;bottom:24px;width:232px}
}
@media(max-width:620px){
  .hero-visual{min-height:500px}
  .hero-visual-copy{left:18px;top:20px;width:69%;max-width:325px}
  .hero-kicker{font-size:.64rem;letter-spacing:.11em}
  .hero-visual-copy>strong{font-size:2.25rem}
  .hero-course-grid,.hero-nvq-row{max-width:310px}
  .hero-course-grid a{min-height:43px;padding:8px 9px;font-size:.70rem}
  .hero-course-grid b{font-size:.70rem}
  .hero-nvq-row a{min-height:48px;padding:7px 6px;font-size:.63rem}
  .hero-nvq-row b{font-size:.65rem}
  .hero-vat-note{margin-top:7px;max-width:265px;font-size:.60rem}
  .hero-worker{height:67%;right:-8%;bottom:0}
  .hero-trust-block{left:18px;bottom:18px;width:220px}
  .hero-trust-line{gap:5px 8px;margin-bottom:9px;font-size:.60rem}
  .hero-dates-cta{padding:9px 11px;font-size:.71rem}
}

/* v26 page-specific FAQ polish */
.page-faq .faq{max-width:920px}
.page-faq .faq details{background:#fff}
.page-faq .faq summary{cursor:pointer}
.page-faq .faq summary::after{content:"+";float:right;margin-left:14px;color:#B77900;font-weight:900}
.page-faq .faq details[open] summary::after{content:"−"}


/* Blog and testimonials */
.testimonial-panel{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:30px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#fff 0%,#FFF8D8 100%);box-shadow:0 10px 30px rgba(17,24,39,.06)}.testimonial-panel h2{margin:12px 0 8px;font-size:clamp(1.7rem,3vw,2.45rem);letter-spacing:-.03em}.testimonial-panel p{margin:0;color:var(--muted);max-width:760px}.testimonial-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.testimonial-empty{margin:26px 0;padding:22px;border:1px dashed #D8B13A;border-radius:14px;background:#FFFBEA}.testimonial-empty p{margin-bottom:0}.blog-meta{font-size:.88rem;color:var(--muted)}.prose a{color:#174EA6;font-weight:700}.prose ul{padding-left:22px}.prose li{margin:7px 0}@media(max-width:860px){.testimonial-panel{grid-template-columns:1fr}.testimonial-actions{justify-content:flex-start}}

/* Four-column testimonial layout */
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1050px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.grid-4{grid-template-columns:1fr}}

.optional-label{font-weight:500;color:var(--muted);font-size:.9em}.checkout-form textarea{min-height:96px}.checkout-form .form-note{line-height:1.45}


/* v36 multi-product cart + header booking actions */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.nav-links{gap:16px}
.btn-book{background:#174EA6;color:#fff;border-color:#174EA6;box-shadow:0 8px 22px rgba(23,78,166,.18)}
.btn-book:hover{background:#123F87;color:#fff;transform:translateY(-1px)}
.cart-link{position:relative;display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;margin:0!important;border:1px solid #D8E2F3;border-radius:10px;background:#fff;color:#174EA6}
.cart-link:hover{border-color:#174EA6;color:#123F87;background:#F6F9FF}
.cart-link svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cart-count{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#FFC107;color:#111827;font-size:.7rem;font-weight:900;border:2px solid #fff;line-height:1}
.cart-count.is-empty{background:#E5E7EB;color:#6B7280}
.add-cart-btn{white-space:nowrap;background:#174EA6;color:#fff;border-color:#174EA6}
.add-cart-btn:hover,.add-cart-btn.added{background:#123F87;color:#fff;border-color:#123F87}
.mini-cart-btn{border:0;background:transparent;padding:0;color:#174EA6;font:inherit;font-size:.82rem;font-weight:900;cursor:pointer;white-space:nowrap}
.mini-cart-btn:hover{color:#123F87;text-decoration:underline}
.add-cart-wide{width:100%;margin-top:12px}
.cart-toast{position:fixed;right:22px;bottom:22px;z-index:200;max-width:min(360px,calc(100% - 44px));padding:12px 16px;border-radius:12px;background:#111827;color:#fff;box-shadow:0 14px 36px rgba(17,24,39,.25);font-weight:800;opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s ease}
.cart-toast.show{opacity:1;transform:translateY(0)}
.cart-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);gap:26px;align-items:start}
.cart-card,.cart-summary{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 10px 30px rgba(17,24,39,.06)}
.cart-card-head,.checkout-summary-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.cart-card-head h2{margin:8px 0 0}.cart-clear,.cart-remove{border:0;background:transparent;color:#B42318;font:inherit;font-weight:800;cursor:pointer;padding:6px}.cart-clear:hover,.cart-remove:hover{text-decoration:underline}
.cart-item{display:grid;grid-template-columns:minmax(0,1fr) 100px 155px auto;gap:18px;align-items:center;padding:20px 0;border-top:1px solid var(--line)}.cart-item:first-child{border-top:0}.cart-item-info h3{margin:0 0 5px}.cart-item-info p{margin:0;color:var(--muted)}.cart-each{display:block;margin-top:5px;font-size:.84rem;color:#475569;font-weight:700}.cart-qty label{margin:0}.cart-qty input{margin-top:6px;min-height:42px}.cart-line-total{text-align:right}.cart-line-total span,.cart-line-total small{display:block;color:var(--muted);font-size:.78rem}.cart-line-total strong{display:block;color:#174EA6}.cart-summary{position:sticky;top:96px}.cart-summary h2{margin-top:0}.cart-checkout{width:100%;margin-top:18px}.cart-checkout.disabled{opacity:.48;pointer-events:none}.cart-empty{text-align:center;padding:36px 12px;border:1px dashed #CBD5E1;border-radius:14px;background:#F8FAFC}.cart-empty h3{margin-top:0}.cart-empty p{color:var(--muted)}.cart-continue{padding-top:20px;border-top:1px solid var(--line);margin-top:16px}.cart-continue a,.checkout-summary-head a{color:#174EA6;font-weight:850}
.checkout-order-lines{border-bottom:1px solid var(--line);margin-bottom:4px}.checkout-order-line{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.checkout-order-line:first-child{border-top:0}.checkout-order-line>div:first-child{display:flex;flex-direction:column;gap:3px}.checkout-order-line span{color:var(--muted);font-size:.84rem}.checkout-order-price{text-align:right;display:flex;flex-direction:column;gap:3px}.checkout-order-price strong{color:#174EA6}.learner-section{margin:24px 0}.learner-section-head h2{margin:8px 0 4px;font-size:1.4rem}.learner-section-head p{margin:0 0 16px;color:var(--muted)}.learner-group{padding:18px 0;border-top:1px solid var(--line)}.learner-group h3{margin:0 0 14px;font-size:1.05rem}.learner-card{padding:14px;border:1px solid var(--line);border-radius:12px;background:#F8FAFC;margin-top:10px}.learner-card h4{margin:0 0 10px}.learner-grid{display:grid;grid-template-columns:1.1fr 1.25fr 1fr;gap:10px}.learner-grid .field{margin-bottom:0}.learner-grid input{min-height:42px}
@media(max-width:1100px){.nav-links{gap:11px;font-size:.93rem}.nav-links .btn{padding:0 14px}.cart-link{width:42px;height:42px}}
@media(max-width:860px){.nav-links{gap:14px}.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.cart-item{grid-template-columns:minmax(0,1fr) 90px 140px auto}.learner-grid{grid-template-columns:1fr}.nav-links .btn{width:100%}.cart-link{width:48px}.cart-link .cart-count{top:-5px;right:-5px}}
@media(max-width:620px){.cart-card,.cart-summary{padding:20px}.cart-item{grid-template-columns:1fr 88px;gap:12px}.cart-item-info{grid-column:1/-1}.cart-line-total{text-align:left}.cart-remove{justify-self:end}.checkout-order-line{flex-direction:column}.checkout-order-price{text-align:left}.cart-toast{right:14px;bottom:14px;max-width:calc(100% - 28px)}}


/* v37 clearer CSCS qualification labels in homepage hero */
.hero-nvq-row a{min-height:68px}
.hero-nvq-row span{font-size:.62rem;line-height:1.12}
@media(max-width:620px){.hero-nvq-row a{min-height:62px}.hero-nvq-row span{font-size:.56rem}}


/* v39 branded booking-processing animation */
body.booking-is-processing{overflow:hidden}
.booking-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.58);backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.booking-loader.is-active{opacity:1;visibility:visible;pointer-events:auto}
.booking-loader-card{width:min(390px,100%);padding:30px 28px 26px;text-align:center;background:#fff;border:1px solid #DCE5F2;border-radius:22px;box-shadow:0 24px 70px rgba(15,23,42,.28)}
.booking-loader-visual{position:relative;width:150px;height:150px;margin:0 auto 14px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:linear-gradient(180deg,#FFF7CD 0%,#FFFDF2 100%)}
.booking-loader-ring{position:absolute;inset:8px;border:4px solid rgba(23,78,166,.13);border-top-color:#174EA6;border-right-color:#FFC107;border-radius:50%;animation:sitecourses-spin 1.05s linear infinite;z-index:1}
.booking-worker-sequence{position:absolute;inset:10px;z-index:2;overflow:hidden;border-radius:50%}
.booking-worker-frame{position:absolute;left:50%;bottom:-6px;width:auto;height:144px;max-width:none;object-fit:contain;object-position:center bottom;opacity:0;transform:translateX(-50%) scale(.98);filter:drop-shadow(0 4px 5px rgba(15,23,42,.10));will-change:opacity,transform}
.booking-loader.is-active .booking-worker-step-1{animation:sitecourses-worker-step1 2.35s ease-in-out both}
.booking-loader.is-active .booking-worker-step-2{animation:sitecourses-worker-step2 2.35s ease-in-out both}
.booking-loader.is-active .booking-worker-step-3{animation:sitecourses-worker-step3 2.35s ease-in-out both}
.booking-loader-card h2{margin:4px 0 8px;color:#0F2748;font-size:1.45rem;letter-spacing:-.02em}
.booking-loader-card p{margin:0;color:#64748B;line-height:1.5}
.booking-loader-dots{display:flex;justify-content:center;gap:7px;margin-top:17px}
.booking-loader-dots span{width:8px;height:8px;border-radius:50%;background:#174EA6;animation:sitecourses-dot 1s ease-in-out infinite}
.booking-loader-dots span:nth-child(2){animation-delay:.16s}.booking-loader-dots span:nth-child(3){animation-delay:.32s}
@keyframes sitecourses-spin{to{transform:rotate(360deg)}}
@keyframes sitecourses-worker-step1{0%,25%{opacity:1;transform:translateX(-50%) translateY(3px) scale(.98)}32%,100%{opacity:0;transform:translateX(-50%) translateY(-3px) scale(1.01)}}
@keyframes sitecourses-worker-step2{0%,25%{opacity:0;transform:translateX(-50%) translateY(4px) scale(.98)}34%,58%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}66%,100%{opacity:0;transform:translateX(-50%) translateY(-2px) scale(1.01)}}
@keyframes sitecourses-worker-step3{0%,58%{opacity:0;transform:translateX(-50%) translateY(3px) scale(.99)}69%,100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes sitecourses-dot{0%,60%,100%{transform:translateY(0);opacity:.38}30%{transform:translateY(-5px);opacity:1}}
@media(prefers-reduced-motion:reduce){.booking-loader-ring,.booking-loader-dots span,.booking-worker-frame{animation:none}.booking-worker-step-1,.booking-worker-step-2{display:none}.booking-worker-step-3{opacity:1;transform:translateX(-50%) scale(1)}}
@media(max-width:620px){.booking-loader-card{padding:24px 20px 22px}.booking-loader-visual{width:132px;height:132px}.booking-worker-frame{height:126px}}


/* v41 auto-rotating testimonial slider */
.testimonial-rotator-wrap{margin-top:8px}
.testimonial-rotator{padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#fff 0%,#FFF8D8 100%);box-shadow:0 12px 36px rgba(17,24,39,.06)}
.testimonial-viewport{position:relative;min-height:260px}
.testimonial-slide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px;opacity:0;transform:translateX(28px);pointer-events:none;transition:opacity .45s ease,transform .45s ease}
.testimonial-slide.is-active{opacity:1;transform:translateX(0);pointer-events:auto}
.testimonial-slide h3{margin:0;font-size:clamp(1.2rem,2vw,1.5rem);letter-spacing:-.02em}
.testimonial-quote{margin:0;color:#475569;line-height:1.68;font-size:1.02rem;max-width:900px}
.testimonial-rotator-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(15,23,42,.08)}
.testimonial-rotator-note{font-size:.95rem;color:#475569;font-weight:700}
.testimonial-rotator-dots{display:flex;flex-wrap:wrap;gap:8px}
.testimonial-dot{width:12px;height:12px;padding:0;border:0;border-radius:999px;background:#D7DEE8;cursor:pointer;transition:transform .2s ease,background .2s ease}
.testimonial-dot.is-active{background:#174EA6;transform:scale(1.08)}
.testimonial-dot:hover{background:#123F87}
.testimonials-grid{align-items:stretch}
.testimonials-grid .course-card p{line-height:1.62}
@media(max-width:860px){.testimonial-rotator{padding:22px}.testimonial-rotator-footer{align-items:flex-start;flex-direction:column}.testimonial-viewport{min-height:320px}}
@media(max-width:620px){.testimonial-slide{gap:10px}.testimonial-viewport{min-height:380px}.testimonial-quote{font-size:.98rem;line-height:1.62}}
@media(prefers-reduced-motion:reduce){.testimonial-slide,.testimonial-dot{transition:none}}


/* v43 secure booking submission + confirmation */
.booking-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.booking-reference-box{margin:24px auto;padding:18px 22px;max-width:520px;border:1px solid #D8E2F3;border-radius:14px;background:#F6F9FF;text-align:center}
.booking-reference-box span{display:block;color:#64748B;font-size:.9rem;font-weight:700;margin-bottom:5px}
.booking-reference-box strong{display:block;color:#174EA6;font-size:clamp(1.35rem,3vw,1.8rem);letter-spacing:.02em}
.booking-confirmed-summary{max-width:760px;margin:26px auto;text-align:left;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.booking-confirmed-line{display:flex;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--line)}
.booking-confirmed-line>div{display:flex;flex-direction:column;gap:4px}.booking-confirmed-line span{color:#64748B;font-size:.9rem}.booking-confirmed-line>strong{color:#174EA6;text-align:right;white-space:nowrap}
.booking-confirmed-totals{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap;padding:16px 18px;background:#F8FAFC}.booking-confirmed-totals span:last-child{color:#174EA6;font-size:1.08rem}
@media(max-width:620px){.booking-confirmed-line{flex-direction:column}.booking-confirmed-line>strong{text-align:left}.booking-confirmed-totals{justify-content:flex-start;flex-direction:column;gap:7px}}


/* v45 PWA/mobile-app polish */
.brand-icon{background:#FFC107}
@media (display-mode:standalone){
  .topbar{display:none}
  .site-header{padding-top:env(safe-area-inset-top)}
  body{padding-bottom:env(safe-area-inset-bottom)}
  .sitecourses-assistant{bottom:calc(12px + env(safe-area-inset-bottom))}
}
@supports(padding:max(0px)){
  @media(max-width:620px){
    .site-header .nav{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
  }
}


/* v48 revision resources + clearer mobile booking cards */
.nowrap-course{white-space:nowrap}
.course-badge{white-space:nowrap;max-width:100%}
.revision-warning{margin:0 0 28px;padding:20px 22px;border:1px solid #E7BE36;border-left:5px solid #FFC107;border-radius:14px;background:#FFFBEA}
.revision-warning h2{margin:0 0 8px;font-size:1.25rem}
.revision-warning p{margin:0;color:#475569;line-height:1.6}
.revision-grid .btn{margin-top:auto;width:max-content}
.revision-grid .course-card{display:flex;flex-direction:column}
.mini-date-actions{display:flex;align-items:center;gap:8px}
.mini-book-btn,.schedule-book-mobile{display:none}
.vat-price-note{font-size:.78em;font-weight:700;color:#64748b;white-space:nowrap}
.big-price .vat-price-note,.price-strip .vat-price-note,.hero-facts .vat-price-note,.hero-course-grid .vat-price-note,.hero-nvq-row .vat-price-note,.choice-card .vat-price-note{display:block;margin-top:3px;line-height:1.2}
.fact-list .vat-price-note{display:block;line-height:1.2}
.big-price .vat-price-note{font-size:.62rem}
.price-strip .vat-price-note{font-size:.72rem}
.hero-course-grid .vat-price-note,.hero-nvq-row .vat-price-note{font-size:.56rem}
.hero-course-grid b,.hero-nvq-row b{white-space:normal}
.hero-facts .vat-inline{font-size:.72rem;color:#64748b}
.checkout-order-price small,.booking-confirmed-prices small{display:block;color:#64748b;font-size:.78rem;font-weight:700}
.booking-confirmed-prices{text-align:right}
@media(max-width:620px){.booking-confirmed-prices{text-align:left}}
.mini-date-actions{justify-content:flex-end;flex-wrap:wrap}
.mini-book-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border-radius:8px;background:#174EA6;color:#fff!important;text-decoration:none!important;font-size:.82rem;font-weight:800;white-space:nowrap}
.mini-book-btn:hover{background:#123F87;color:#fff!important}
@media(max-width:620px){
  .hero-course-grid span{white-space:nowrap}
  .hero-course-grid a{gap:5px;font-size:.66rem}
  .hero-course-grid b{font-size:.66rem}
  .availability-card{padding:18px 16px;overflow:hidden}
  .availability-head{gap:10px}
  .availability-head h3{font-size:1.22rem;line-height:1.15}
  .availability-card .course-badge{display:inline-flex;white-space:nowrap;font-size:.64rem;padding:4px 7px;letter-spacing:-.01em}
  .big-price{font-size:1.27rem}
  .big-price .vat-inline{font-size:.58rem}
  .mini-dates{margin-top:12px}
  .mini-dates li{align-items:center;gap:8px;padding:11px 0}
  .mini-dates li>span:first-child{font-size:.91rem;line-height:1.35;min-width:0}
  .mini-cart-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 5px;font-size:.78rem}
  .mini-book-btn{min-height:34px;padding:0 9px;font-size:.78rem}
  .availability-card>.card-link{display:none}
  .table-wrap{overflow:visible;border:0;background:transparent}
  .schedule-table{min-width:0;width:100%;border-collapse:separate;border-spacing:0 9px}
  .schedule-table thead{display:none}
  .schedule-table tbody{display:block}
  .schedule-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 13px}
  .schedule-table td{display:block;padding:0;border:0}
  .schedule-table .duration-cell,.schedule-table .delivery-cell,.schedule-table .price-cell{display:none}
  .schedule-table .course-cell{grid-column:1/-1;font-size:.82rem;color:#174EA6}
  .schedule-table .date-cell{grid-column:1/2}
  .schedule-table .action-cell{grid-column:2/3;grid-row:1/2}
  .schedule-table.master .action-cell{grid-row:2/3}
  .schedule-table .add-cart-btn{display:none!important}
  .schedule-book-mobile{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:36px;padding:0 12px;border-radius:9px;background:#174EA6;color:#fff!important;text-decoration:none!important;font-size:.8rem;font-weight:900;white-space:nowrap}
  .mobile-label{display:none!important}
}

/* Interactive practice papers */
.mock-shell{max-width:900px;margin:28px auto}.mock-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.mock-toolbar select{padding:11px 14px;border:1px solid #abb9c9;border-radius:8px;background:#fff;min-width:175px}.mock-status,.mock-results{padding:24px}.mock-question{border:1px solid #d8e0e9;border-radius:12px;padding:24px;margin:18px 0;background:#fff}.mock-question legend{font-size:1.08rem;font-weight:700;padding:0 4px}.mock-question label{display:flex;gap:12px;align-items:flex-start;padding:10px 8px;border-radius:7px;cursor:pointer}.mock-question label:hover{background:#f5f8fb}.mock-question input{margin-top:5px;flex:none}.mock-mark{border-left:5px solid #d39b00;background:#fff9e6}.mock-correct{border-left:5px solid #2a8b5d;background:#f4faf6}.mock-review{margin-top:14px;padding:12px;border-radius:8px;background:#f1f4f8}.mock-result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.mock-submit{margin:18px 0}.mock-score{font-size:1.4rem;font-weight:800}.mock-results:focus{outline:3px solid #e4ae12}.mock-question fieldset{border:0;padding:0;margin:0;min-width:0}@media(max-width:600px){.mock-toolbar{align-items:stretch;flex-direction:column}.mock-toolbar select,.mock-toolbar button{width:100%}.mock-question{padding:18px}}

.mock-question .mock-choice{display:flex;align-items:center;justify-content:flex-start;width:100%;gap:12px;margin:8px 0;padding:13px 16px;border:2px solid #d8e0e9;border-radius:10px;background:#fff;font-size:1rem;font-weight:600;line-height:1.45;cursor:pointer;box-sizing:border-box}.mock-question .mock-choice:hover{border-color:#b48a00;background:#fffbeb}.mock-question .mock-choice:has(input:checked){border-color:#bd8c00;background:#fff3c7}.mock-question .mock-choice:focus-within{outline:3px solid #e4ae12;outline-offset:2px}.mock-question .mock-choice input[type=radio],.mock-question .mock-choice input[type=checkbox]{width:20px;height:20px;min-height:0;padding:0;margin:0;flex:0 0 20px;accent-color:#0f2748}.mock-choice-letter{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#e9eef5;color:#0f2748;font-weight:800}.mock-choice-text{display:block;flex:1;min-width:0;overflow-wrap:anywhere}.mock-question label.mock-choice{font-weight:600}.mock-question .mock-choice:has(input:disabled){cursor:default}
/* v58: make only the four course prices in the hero panel easier to read. */
.hero-course-grid a > b{font-size:1rem;font-weight:900;line-height:1.05;color:#10439a}
@media(max-width:620px){.hero-course-grid a > b{font-size:.9rem}}
/* v59: reserve the upper mobile hero for the worker portrait, then show cards below. */
@media(max-width:620px){
  .hero-visual{min-height:760px}
  .hero-worker{height:350px;width:auto;top:54px;bottom:auto;right:-18px;max-width:none}
  .hero-visual-copy{position:relative;top:auto;left:auto;width:auto;max-width:none;padding:20px 17px 0;z-index:4}
  .hero-kicker{display:block;max-width:54%;font-size:.60rem;line-height:1.45}
  .hero-visual-copy>strong{max-width:55%;font-size:clamp(1.65rem,7vw,2.05rem);line-height:1.03}
  .hero-course-grid{margin-top:245px;max-width:none}
  .hero-nvq-row{max-width:none}
  .hero-vat-note{max-width:none}
  .hero-trust-block{left:17px;right:17px;bottom:18px;width:auto}
}
@media(max-width:360px){
  .hero-visual{min-height:780px}
  .hero-worker{height:325px;top:76px;right:-22px}
  .hero-course-grid{margin-top:255px}
  .hero-course-grid a{padding:7px 6px;gap:4px}
  .hero-course-grid a > b{font-size:.82rem}
}

.offer-form{margin:18px 0;padding:15px;border:1px solid #d8e0e9;border-radius:12px;background:#f8fafc}.offer-entry{display:flex;gap:8px}.offer-entry input{min-width:0;flex:1}.offer-entry .btn{white-space:nowrap}.offer-remove{border:0;background:transparent;color:#174ea6;text-decoration:underline;cursor:pointer;margin-top:8px;padding:0}.offer-form .form-note{margin:8px 0 0}@media(max-width:500px){.offer-entry{flex-direction:column}.offer-entry .btn{width:100%}}
.summary-list > div[hidden]{display:none!important}

/* v62 training providers page and responsive navigation */
.site-header .container.nav{width:min(1320px,calc(100% - 32px));gap:12px}
.nav-links{gap:clamp(8px,1vw,14px);font-size:.91rem}
.nav-links a{white-space:nowrap}
.nav-links a[aria-current="page"]{color:#174EA6;text-decoration:underline;text-underline-offset:5px}
.provider-hero .btn{margin-top:14px}
.provider-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:48px;align-items:start}
.provider-layout .prose h2:first-of-type{margin-top:10px}
.provider-contact{border:1px solid #D8E2F3;background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 30px rgba(17,24,39,.06)}
.provider-contact h2{margin:12px 0}.provider-contact .btn{margin-top:10px}
.provider-email{overflow-wrap:anywhere}
@media(max-width:1180px){
  .nav-links{display:none;position:absolute;top:72px;left:0;right:0;padding:16px 20px 22px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;max-height:calc(100vh - 72px);overflow-y:auto;gap:14px}
  .nav-links.open{display:flex}.nav-links a{white-space:normal}.mobile-toggle{display:block}
  .nav-links .btn{width:100%}.provider-layout{grid-template-columns:1fr}
}
@media(max-width:620px){.provider-contact{padding:22px}.provider-hero .btn{width:100%}}

/* v63: direct booking action for each course-date product on desktop */
@media(min-width:621px){
  .schedule-table.master .action-cell{white-space:nowrap}
  .schedule-table.master .schedule-book-mobile{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-left:8px;padding:0 12px;border-radius:9px;background:#174EA6;color:#fff!important;text-decoration:none!important;font-size:.86rem;font-weight:800;vertical-align:middle}
  .schedule-table.master .schedule-book-mobile:hover{background:#123F87}
}

/* Keep the full desktop header within common laptop widths. */
@media(min-width:1261px){.site-header .nav-links{gap:8px;font-size:.86rem}.site-header .nav-links .btn{padding:0 11px}}
@media(min-width:1181px) and (max-width:1260px){.site-header .nav-links{gap:6px;font-size:.82rem}.site-header .nav-links .btn{padding:0 9px}}

/* v64: identical action-button typography on the course dates table. */
@media(min-width:621px){
  .schedule-table.master .action-cell .add-cart-btn,
  .schedule-table.master .action-cell .schedule-book-mobile{font-size:14px;font-weight:800;line-height:1}
}

/* Keep article action text legible on solid button backgrounds. */
.prose a.btn-book,.prose a.btn-book:visited{color:#fff}
.prose a.btn-book:hover,.prose a.btn-book:focus-visible{color:#fff;background:#123F87}
.prose a.btn-primary,.prose a.btn-primary:visited{color:#111827}
.prose a.btn-primary:hover,.prose a.btn-primary:focus-visible{color:#111827}

/* v77: paired cart and direct-booking actions on every product. */
.course-booking-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.schedule-table .course-booking-actions{flex-wrap:nowrap}
.schedule-table .schedule-book-mobile{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-left:0;padding:0 12px;border-radius:9px;background:#FFC107;color:#111827!important;text-decoration:none!important;font-size:14px;font-weight:800;line-height:1;white-space:nowrap}
.schedule-table .schedule-book-mobile:hover{background:#EAB000;color:#111827!important}
.schedule-table .add-cart-btn{font-size:14px;font-weight:800;line-height:1}
.product-booking-actions{display:flex;width:100%;margin-top:12px}
.product-booking-actions>.btn{flex:1 1 125px;min-width:0;margin-top:0;width:auto;text-align:center;white-space:nowrap}
.mini-book-btn{background:#FFC107;color:#111827!important}
.mini-book-btn:hover{background:#EAB000;color:#111827!important}
@media(max-width:620px){
 .schedule-table .add-cart-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:36px}
 .schedule-table .date-cell{grid-column:1/-1}
 .schedule-table .action-cell,.schedule-table.master .action-cell{grid-column:1/-1;grid-row:auto}
 .schedule-table .course-booking-actions{display:flex;flex-wrap:wrap;width:100%}
 .schedule-table .course-booking-actions>*{flex:1 1 125px;min-width:0}
 .mini-date-actions{flex-shrink:0}
}
/* Equal-size blue actions, matching the existing course-dates page. */
.course-booking-actions{display:inline-grid;grid-template-columns:repeat(2,110px);gap:8px;align-items:stretch}
.schedule-table .course-booking-actions{display:inline-grid}
.product-booking-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.course-booking-actions>button,.course-booking-actions>a,.schedule-table.master .course-booking-actions>a,.mini-date-actions>button,.mini-date-actions>a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:38px;min-height:38px;width:100%;min-width:0;margin:0;padding:0 10px;border:1px solid #174EA6;border-radius:9px;background:#174EA6;color:#fff!important;font-family:inherit;font-size:14px;font-weight:800;line-height:1;text-decoration:none!important;white-space:nowrap;cursor:pointer}
.course-booking-actions>button:hover,.course-booking-actions>a:hover,.schedule-table.master .course-booking-actions>a:hover,.mini-date-actions>button:hover,.mini-date-actions>a:hover{background:#123F87;border-color:#123F87;color:#fff!important}
.mini-date-actions{display:grid;grid-template-columns:repeat(2,100px);gap:8px}
.mini-date-actions>button,.mini-date-actions>a{height:34px;min-height:34px;font-size:13px;padding:0 8px}
@media(max-width:620px){
 .schedule-table .course-booking-actions,.product-booking-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
 .mini-dates li{flex-direction:column;align-items:stretch}
 .mini-date-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
}

/* v78: distinguish basket actions from immediate booking. */
body [data-add-to-cart]{background:#FFC107!important;border-color:#FFC107!important;color:#111827!important}
body [data-add-to-cart]:hover,body [data-add-to-cart].added{background:#EAB000!important;border-color:#EAB000!important;color:#111827!important}
body .schedule-book-mobile,body .mini-book-btn,body .direct-book-btn{background:#174EA6!important;border-color:#174EA6!important;color:#fff!important}
body .schedule-book-mobile:hover,body .mini-book-btn:hover,body .direct-book-btn:hover{background:#123F87!important;border-color:#123F87!important;color:#fff!important}

.l2-trades{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem 1.5rem;padding-left:1.25rem}.l2-trades li{padding:.25rem 0}#book>.container>.field{max-width:560px}#book select{width:100%;padding:12px;border:1px solid #aab6c6;border-radius:8px;background:#fff;color:#0f2748}#book .course-card .btn{white-space:normal}

/* v84 unified pricing, actions and homepage presentation */
.price-display{display:inline-flex;flex-direction:column;align-items:flex-start;vertical-align:middle;gap:3px;line-height:1.2;margin:2px 0;max-width:100%}
.price-main{display:block;color:#111827;font-size:1.3rem;font-weight:800;letter-spacing:-.025em;line-height:1.2;white-space:nowrap}
.vat-price-note,.vat-inline,.vat-table,.hero-vat-total{display:block!important;color:#174ea6!important;font-size:.65rem!important;font-weight:500!important;line-height:1.35!important;margin:4px 0 0!important;white-space:normal!important}
.price-display .price-display{display:contents}
.price-cell .price-main{font-size:1.15rem}
body .btn-book,body .mini-book-btn,body .schedule-book-mobile,body .direct-book-btn{display:inline-flex;align-items:center;justify-content:center;background:#174ea6!important;color:#fff!important;border:1px solid #174ea6!important;border-radius:9px;text-decoration:none!important;font-family:inherit;font-weight:800;line-height:1.2}
body .btn-book:visited,body .btn-book:hover,body .btn-book:focus-visible,body .mini-book-btn:visited,body .schedule-book-mobile:visited{color:#fff!important}
body .btn-book:hover,body .mini-book-btn:hover,body .schedule-book-mobile:hover{background:#123f87!important;border-color:#123f87!important}
body [data-add-to-cart],body .mini-cart-btn{display:inline-flex;align-items:center;justify-content:center;background:#ffc107!important;color:#111827!important;border:1px solid #ffc107!important;border-radius:9px;font-family:inherit;font-weight:800;line-height:1.2}
body [data-add-to-cart]:hover,body .mini-cart-btn:hover{background:#eab000!important;border-color:#eab000!important;color:#111827!important}
body .mini-book-btn,body .mini-cart-btn{min-height:35px;padding:8px 12px;font-size:.8rem}
.btn:focus-visible,[data-add-to-cart]:focus-visible,.mini-book-btn:focus-visible{outline:3px solid #799ce6;outline-offset:3px}
.resource-group{margin-top:38px}.resource-group h2{font-size:1.6rem;line-height:1.2}.resource-search{max-width:560px;margin:22px 0}.resource-search label{display:block;font-weight:700;margin-bottom:7px}.resource-search input{width:100%;padding:13px 15px;border:1px solid #aab6c6;border-radius:9px;font:inherit}.resource-catalog .course-card{display:flex;flex-direction:column}.resource-catalog .course-card .card-link{margin-top:auto}.revision-bottom-link{margin:22px 0 0}.resource-group[hidden],.resource-catalog article[hidden]{display:none!important}
#courses .availability-head>.price-display{align-items:flex-end;flex-shrink:0}.availability-card>p{min-height:52px}.availability-grid{align-items:stretch}
.branded-hero .hero-visual{min-height:0;padding:28px 24px 22px;isolation:isolate;overflow:hidden}
.branded-hero .hero-visual-copy{position:relative;top:auto;left:auto;width:100%;max-width:none;padding:0;z-index:3}
.branded-hero .hero-kicker{display:block;max-width:65%;font-size:.65rem;line-height:1.4;letter-spacing:.1em;font-weight:800}
.branded-hero .hero-visual-copy>strong{display:block;font-size:2.3rem;line-height:1.05;letter-spacing:-.045em;max-width:62%;margin-top:14px}
.branded-hero .hero-worker{position:absolute;top:42px;right:-12px;bottom:auto;height:220px;width:auto;max-width:none;z-index:1}
.branded-hero .hero-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-width:none;margin-top:80px}
.branded-hero .hero-course-grid a{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:11px 10px;min-height:72px;min-width:0;background:rgba(255,255,255,.97);border:1px solid #dde3ec;border-radius:11px}
.branded-hero .hero-course-grid .hero-course-name{font-size:.78rem;line-height:1.3;font-weight:750;white-space:normal;min-width:0;flex:1}
.branded-hero .hero-course-grid .price-display{flex:none;align-items:flex-end;text-align:right;margin:0}
.branded-hero .hero-course-grid .price-main{font-size:1.05rem}
.branded-hero .hero-course-grid .vat-price-note{font-size:.55rem!important;max-width:83px}
.branded-hero .hero-nvq-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:none;margin-top:10px}
.branded-hero .hero-nvq-row a{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;padding:10px;min-height:84px;min-width:0;border:1px solid #e8d483;border-radius:10px;background:#fff9e2}
.branded-hero .hero-nvq-row a>span:first-child{font-size:.66rem;line-height:1.25;font-weight:750;white-space:normal}
.branded-hero .hero-nvq-row .price-main{font-size:.96rem}
.branded-hero .hero-nvq-row .vat-price-note{font-size:.53rem!important}
.branded-hero .hero-vat-note{position:static;margin:11px 0;font-size:.68rem;max-width:none}
.branded-hero .hero-trust-block{position:relative;left:auto;right:auto;bottom:auto;width:100%;margin-top:16px;z-index:4}
.branded-hero .hero-trust-line{font-size:.72rem;gap:6px 12px}
.branded-hero .hero-dates-cta{display:flex;width:100%;min-height:48px;padding:13px 17px;justify-content:space-between;font-size:.9rem;border-radius:10px}
@media(max-width:620px){.branded-hero .hero-visual{padding:24px 17px 18px}.branded-hero .hero-visual-copy>strong{font-size:2rem}.branded-hero .hero-worker{height:205px;top:54px;right:-13px}.branded-hero .hero-course-grid{margin-top:85px}.branded-hero .hero-course-grid a{min-height:76px;padding:9px 8px}.branded-hero .hero-course-grid .hero-course-name{font-size:.73rem}.branded-hero .hero-course-grid .price-main{font-size:.98rem}.branded-hero .hero-nvq-row{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-head h3{font-size:1.1rem}.price-main{font-size:1.2rem}.resource-group h2{font-size:1.4rem}}
body .btn-book .price-main,body .btn-book .vat-price-note{color:#fff!important}
body [data-add-to-cart] .price-main,body [data-add-to-cart] .vat-price-note{color:#111827!important}
.checkout-order-price small,.cart-each small,small.cart-each{color:#174ea6;font-size:.65rem;line-height:1.35}
.branded-hero .hero-visual .hero-dates-cta .price-main{color:#fff!important}

/* V85 voice-note refinements — 2026-09-30 */
body .yellow-cta,
body .yellow-cta:visited,
body .nav-links .btn-primary,
body .nav-links .btn-primary:visited,
body .branded-hero .hero-dates-cta,
body .branded-hero .hero-dates-cta:visited {
  background:#FFC107!important;
  border-color:#FFC107!important;
  color:#111827!important;
  box-shadow:0 8px 22px rgba(255,193,7,.22);
}
body .yellow-cta:hover,
body .yellow-cta:focus-visible,
body .nav-links .btn-primary:hover,
body .nav-links .btn-primary:focus-visible,
body .branded-hero .hero-dates-cta:hover,
body .branded-hero .hero-dates-cta:focus-visible {
  background:#E7AF00!important;
  border-color:#E7AF00!important;
  color:#111827!important;
}

/* Professional, interactive hero course carousel. */
.branded-hero .hero-visual{padding:30px 26px 24px;background:linear-gradient(145deg,#fffdf5 0%,#fff5ca 50%,#f5f7fb 100%);box-shadow:0 26px 60px rgba(17,24,39,.13)}
.branded-hero .hero-visual-copy>strong{font-size:clamp(2rem,3vw,2.65rem);line-height:1.02;letter-spacing:-.04em;max-width:58%}
.branded-hero .hero-kicker{font-size:.68rem;letter-spacing:.12em}
.branded-hero .hero-course-grid.hero-course-carousel{display:flex;grid-template-columns:none;gap:12px;max-width:none;margin-top:88px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#b9a035 transparent}
.branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile{scroll-snap-align:start;flex:0 0 min(235px,78%);display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:5px;min-height:156px;padding:15px 14px;border:1px solid #d9dee8;border-top:4px solid #FFC107;border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 9px 22px rgba(17,24,39,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile:hover,.branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile:focus-visible{transform:translateY(-2px);box-shadow:0 13px 28px rgba(17,24,39,.12);border-color:#d3ae17;outline:none}
.branded-hero .hero-course-grid.hero-course-carousel .hero-course-name{font-size:.95rem;line-height:1.22;font-weight:850;color:#111827}
.branded-hero .hero-course-grid.hero-course-carousel .hero-course-type{font-size:.63rem;line-height:1.2;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#174EA6;background:#eef4ff;border-radius:999px;padding:3px 8px;display:inline-flex;align-items:center}

.branded-hero .hero-course-grid.hero-course-carousel .hero-course-meta{font-size:.72rem;line-height:1.35;color:#64748b;font-weight:700;min-height:2em}
.branded-hero .hero-course-grid.hero-course-carousel .price-display{display:flex;flex-direction:column;align-items:flex-start;text-align:left;margin-top:auto;gap:0}
.branded-hero .hero-course-grid.hero-course-carousel .price-main{font-size:1.22rem;color:#174EA6}
.branded-hero .hero-course-grid.hero-course-carousel .vat-price-note{font-size:.62rem!important;max-width:none;color:#174EA6!important}
.branded-hero .hero-course-link{font-size:.72rem;font-weight:850;color:#174EA6;margin-top:3px}
.hero-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px;color:#475569;font-size:.72rem;font-weight:800}
.hero-carousel-arrow{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #d5b43a;border-radius:50%;background:#fff;color:#111827;font:900 1.25rem/1 inherit;cursor:pointer;box-shadow:0 5px 12px rgba(17,24,39,.07)}
.hero-carousel-arrow:hover,.hero-carousel-arrow:focus-visible{background:#FFC107;border-color:#FFC107;outline:2px solid #174EA6;outline-offset:2px}
.branded-hero .hero-vat-note{margin:9px 0 0}
.branded-hero .hero-trust-block{margin-top:12px}

/* Three clear revision hubs with refresher subsections. */
.revision-three-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
.revision-hub-card{border-top:4px solid #174EA6;padding-top:18px}
.revision-hub-card .course-badge{align-self:flex-start}
.revision-subroutes{display:grid;gap:9px;margin-top:auto;padding-top:8px}
.revision-subroutes a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #d9e1ec;border-radius:10px;background:#f8fafc;color:#111827;text-decoration:none}
.revision-subroutes a:hover,.revision-subroutes a:focus-visible{border-color:#FFC107;background:#fff9df;outline:none}
.revision-subroutes strong{font-size:.88rem}.revision-subroutes span{font-size:.72rem;color:#174EA6;font-weight:800;text-align:right}
.revision-subroutes.single{margin-top:auto}

/* Uniform CSCS route bubbles and Green-card-style price hierarchy. */
.cscs-route-grid{align-items:stretch}
.cscs-route-card{border-top:4px solid #174EA6;display:flex;flex-direction:column;min-height:100%;padding:22px}
.cscs-route-card .course-badge{align-self:flex-start;min-height:30px;display:inline-flex;align-items:center}
.cscs-route-card h3{min-height:2.5em;display:flex;align-items:flex-start}
.cscs-route-card>p{min-height:72px;margin-bottom:14px}
.cscs-pricing{display:grid;gap:8px;margin-top:auto;padding:13px 0 14px;border-top:1px solid #e3e8ef}
.cscs-price-row{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;min-height:47px}
.cscs-price-row .price-display{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0}
.cscs-price-row .price-main{font-size:1.35rem;line-height:1.05;color:#174EA6}
.cscs-price-row .vat-price-note{font-size:.68rem!important;line-height:1.25;color:#174EA6!important;margin-top:2px}
.cscs-price-label{font-size:.72rem;color:#64748b;font-weight:750;text-align:right;max-width:42%}
.cscs-route-card .card-link{margin-top:0;font-weight:850}
.cscs-route-card>p:has(.card-link){min-height:0;margin:0}

@media(max-width:900px){.revision-three-grid{grid-template-columns:1fr!important}.cscs-route-card h3,.cscs-route-card>p{min-height:0}}
@media(max-width:620px){
  .branded-hero .hero-visual{padding:24px 17px 18px}
  .branded-hero .hero-visual-copy>strong{font-size:1.95rem;max-width:62%}
  .branded-hero .hero-course-grid.hero-course-carousel{margin-top:92px;gap:10px}
  .branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile{flex-basis:82%;min-height:140px;padding:13px 12px}
  .hero-carousel-controls span{font-size:.68rem}
}
@media(prefers-reduced-motion:reduce){.branded-hero .hero-course-grid.hero-course-carousel{scroll-behavior:auto}.branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile{transition:none}}


/* V86 homepage hero carousel fix — keep page position stable and show two complete cards. */
.branded-hero .hero-visual{
  overflow:hidden;
}
.branded-hero .hero-visual-copy{
  left:30px;
  right:30px;
  width:auto;
  max-width:none;
}
.branded-hero .hero-visual-copy>strong{
  max-width:55%;
}
.branded-hero .hero-course-grid.hero-course-carousel{
  width:100%;
  max-width:100%;
  padding:4px 0 12px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:none;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:0;
  touch-action:pan-x;
  scrollbar-gutter:stable;
}
.branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile{
  flex:0 0 calc((100% - 12px)/2);
  min-width:0;
  max-width:calc((100% - 12px)/2);
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
@media(max-width:620px){
  .branded-hero .hero-visual-copy{left:17px;right:17px;width:auto}
  .branded-hero .hero-visual-copy>strong{max-width:62%}
  .branded-hero .hero-course-grid.hero-course-carousel{gap:10px;margin-top:92px}
  .branded-hero .hero-course-grid.hero-course-carousel .hero-course-tile{
    flex-basis:calc((100% - 10px)/2);
    max-width:calc((100% - 10px)/2);
    min-height:166px;
    padding:12px 10px;
  }
  .branded-hero .hero-course-grid.hero-course-carousel .hero-course-name{font-size:.78rem}
  .branded-hero .hero-course-grid.hero-course-carousel .hero-course-meta{font-size:.64rem}
  .branded-hero .hero-course-grid.hero-course-carousel .price-main{font-size:1.05rem}
  .branded-hero .hero-course-grid.hero-course-carousel .vat-price-note{font-size:.56rem!important}
  .branded-hero .hero-course-link{font-size:.64rem}
}


/* V87 homepage hero refinement — centre course bubbles, focus worker artwork, link centre control. */
.branded-hero .hero-course-grid.hero-course-carousel{
  width:92%;
  margin-left:auto;
  margin-right:auto;
}
.branded-hero .hero-carousel-controls{
  width:92%;
  margin-left:auto;
  margin-right:auto;
}
.branded-hero .hero-worker{
  height:235px;
  top:28px;
  right:14px;
  opacity:1;
  filter:drop-shadow(0 10px 15px rgba(17,24,39,.13));
}
.hero-carousel-all-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 10px;
  border-radius:999px;
  color:#174EA6;
  text-decoration:none;
  font-weight:850;
  text-align:center;
}
.hero-carousel-all-link:hover,.hero-carousel-all-link:focus-visible{
  background:#fff3b5;
  color:#0f3d86;
  outline:2px solid #174EA6;
  outline-offset:2px;
}
@media(max-width:620px){
  .branded-hero .hero-course-grid.hero-course-carousel,
  .branded-hero .hero-carousel-controls{width:94%}
  .branded-hero .hero-worker{height:218px;top:44px;right:4px}
  .hero-carousel-all-link{padding:0 6px;font-size:.68rem}
}
/* Keep V87 hero content genuinely centred: V86 relative offsets shifted it right. */
.branded-hero .hero-visual-copy{
  left:auto;
  right:auto;
  width:100%;
}
@media(max-width:620px){
  .branded-hero .hero-visual-copy{left:auto;right:auto;width:100%}
}

/* v88: align homepage availability cards and support CSCS route rows in the master schedule */
@media (min-width:621px){
  #courses .availability-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:18px;row-gap:8px;align-items:end}
  #courses .availability-head>div{display:contents}
  #courses .availability-head .course-badge{grid-column:1/-1;grid-row:1;min-height:30px;display:inline-flex;align-items:center;justify-self:start}
  #courses .availability-head h3{grid-column:1;grid-row:2;margin:0;min-height:2.8rem;display:flex;align-items:flex-end;line-height:1.15}
  #courses .availability-head .big-price{grid-column:2;grid-row:2;align-self:end;text-align:right;min-width:128px;line-height:1.05}
}
#courses .availability-card>p{min-height:2.8em}
.schedule-table .route-booking-actions{grid-template-columns:repeat(3,minmax(92px,1fr));min-width:320px}
.route-enquire-btn,.route-select-btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:38px;min-height:38px;width:100%;margin:0;padding:0 10px;border:1px solid #174EA6;border-radius:9px;background:#fff;color:#174EA6!important;font-family:inherit;font-size:14px;font-weight:800;line-height:1;text-decoration:none!important;white-space:nowrap}
.route-enquire-btn:hover,.route-select-btn:hover{background:#eef4ff;color:#123f87!important;border-color:#123f87}
.cscs-route-row td{background:#fbfdff}
.schedule-controls label[hidden]{display:none!important}
@media(max-width:660px){
  #courses .availability-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;row-gap:6px;align-items:end}
  #courses .availability-head>div{display:contents}
  #courses .availability-head .course-badge{grid-column:1/-1;grid-row:1;justify-self:start}
  #courses .availability-head h3{grid-column:1;grid-row:2;margin:0;min-height:0}
  #courses .availability-head .big-price{grid-column:2;grid-row:2;text-align:right;align-self:end;min-width:104px;font-size:1.2rem}
  #courses .availability-card>p{min-height:0}
  .schedule-table .route-booking-actions{grid-template-columns:1fr;min-width:0;width:100%}
}


/* v89: course-page spacing, button contrast, inline pricing and assistant mobile polish */
.course-faq-tight{padding-bottom:34px}
.section.soft.course-followup{padding-top:24px;padding-bottom:30px}
.section.soft.course-followup + .section.soft.course-followup{padding-top:10px}
.section.soft.course-followup h2{margin-top:0}

/* Blue actions always use white text; yellow actions always use charcoal/black text. */
body .btn-book:not(.yellow-cta):not([data-add-to-cart]),
body .direct-book-btn,
body .mini-book-btn,
body .schedule-book-mobile,
body .checkout-pay,
body .cart-checkout{color:#fff!important}
body .yellow-cta,
body [data-add-to-cart],
body .mini-cart-btn,
body .nav-links .btn-primary,
body .assistant-launch,
body .assistant-form button{color:#111827!important}
body .nav-links .btn.btn-book.btn-primary,
body .btn-book.yellow-cta{color:#111827!important}

/* Keep the assistant's primary labels on one clean line on mobile/narrow screens. */
.assistant-launch>span:last-child,
.assistant-brand strong,
.assistant-brand>div>span{white-space:nowrap}

@media(max-width:620px){
  .course-faq-tight{padding-bottom:26px}
  .section.soft.course-followup{padding-top:18px;padding-bottom:24px}
  .section.soft.course-followup + .section.soft.course-followup{padding-top:6px}
  .assistant-brand>div>span{font-size:.7rem}
}


/* v90: universal action-button contrast and body-copy pricing as real inline text */
.price-inline-text{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  white-space:normal!important;
  vertical-align:baseline!important;
}

/* Blue filled actions: always white type. */
body .btn-book:not(.yellow-cta):not([data-add-to-cart]),
body .direct-book-btn,
body .mini-book-btn,
body .schedule-book-mobile,
body .checkout-pay,
body .cart-checkout,
body .course-booking-actions > a:not([data-add-to-cart]),
body .course-booking-actions > button:not([data-add-to-cart]),
body .mini-date-actions > a:not([data-add-to-cart]),
body .mini-date-actions > button:not([data-add-to-cart]){
  color:#fff!important;
}
body .btn-book:not(.yellow-cta):not([data-add-to-cart]) *,
body .direct-book-btn *,
body .mini-book-btn *,
body .schedule-book-mobile *,
body .checkout-pay *,
body .cart-checkout *,
body .course-booking-actions > a:not([data-add-to-cart]) *,
body .course-booking-actions > button:not([data-add-to-cart]) *,
body .mini-date-actions > a:not([data-add-to-cart]) *,
body .mini-date-actions > button:not([data-add-to-cart]) *{
  color:#fff!important;
}

/* Yellow filled actions: always charcoal/black type. */
body .btn-primary:not(.btn-book),
body .yellow-cta,
body [data-add-to-cart],
body .mini-cart-btn,
body .nav-links .btn-primary,
body .assistant-launch,
body .assistant-form button,
body .hero-dates-cta{
  color:#111827!important;
}
body .btn-primary:not(.btn-book) *,
body .yellow-cta *,
body [data-add-to-cart] *,
body .mini-cart-btn *,
body .nav-links .btn-primary *,
body .assistant-launch *,
body .assistant-form button *,
body .hero-dates-cta *{
  color:#111827!important;
}

/* v90 specificity guards: older component rules cannot invert the requested contrast. */
body .schedule-table .schedule-book-mobile,
body .schedule-table.master .schedule-book-mobile,
body .schedule-table .schedule-book-mobile:visited,
body .schedule-table.master .schedule-book-mobile:visited,
body .schedule-table .schedule-book-mobile:hover,
body .schedule-table.master .schedule-book-mobile:hover{
  color:#fff!important;
}
body .btn-book.yellow-cta .price-main,
body .btn-book.yellow-cta .vat-price-note,
body .yellow-cta .price-main,
body .yellow-cta .vat-price-note,
body .branded-hero .hero-visual .hero-dates-cta .price-main,
body .branded-hero .hero-visual .hero-dates-cta .vat-price-note{
  color:#111827!important;
}


/* v91: two clear actions in course-at-a-glance panels */
.info-panel-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}
.info-panel-actions .btn{display:flex;width:100%;min-width:0;align-items:center;justify-content:center;text-align:center;padding:12px 14px;line-height:1.2}
.info-panel-actions .course-panel-enquire{background:#FFC107!important;border-color:#FFC107!important;color:#111827!important}
.info-panel-actions .course-panel-enquire:visited,.info-panel-actions .course-panel-enquire:hover,.info-panel-actions .course-panel-enquire:focus-visible{color:#111827!important}
.info-panel-actions .course-panel-enquire:hover{background:#E7AF00!important;border-color:#E7AF00!important}
.info-panel-actions .course-panel-book{background:#174EA6!important;border-color:#174EA6!important;color:#fff!important}
.info-panel-actions .course-panel-book:visited,.info-panel-actions .course-panel-book:hover,.info-panel-actions .course-panel-book:focus-visible{color:#fff!important}
.info-panel-actions .course-panel-book:hover{background:#123F87!important;border-color:#123F87!important}

/* v92: mobile viewport alignment — prevent document-level sideways drift/white edge while preserving nested carousels and scrollable tables. */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}
.topbar,
.site-header,
main,
footer{
  max-width:100%;
}
@supports not (overflow:clip){
  html,
  body{overflow-x:hidden}
}


/* v93: homepage course-card polish and NVQ action refinements. */
#courses .availability-head{justify-content:flex-start;align-items:flex-end;gap:22px;flex-wrap:wrap}
#courses .availability-head>div{min-width:0}
#courses .availability-head h3{font-size:1.62rem;line-height:1.05;letter-spacing:-.025em;margin:12px 0 1px;font-weight:900}
#courses .availability-head>.price-display{align-items:flex-start!important;text-align:left!important;margin:0 0 1px!important}
#courses .availability-head>.price-display .price-main{font-size:1.68rem;line-height:1;font-weight:900;letter-spacing:-.03em}
#courses .availability-head>.price-display .vat-price-note,
#courses .availability-head>.price-display .vat-inline{font-size:.68rem!important;margin-top:5px!important;text-align:left!important}
.nvq-profile-cta{display:flex!important;width:100%;margin-top:18px;background:#FFC107!important;border-color:#FFC107!important;color:#111827!important}
.nvq-profile-cta:hover,.nvq-profile-cta:focus-visible{background:#E7AF00!important;border-color:#E7AF00!important;color:#111827!important}
.level2-panel-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}
.level2-panel-actions .btn{display:flex;width:100%}
.level2-book-now{background:#174EA6!important;border-color:#174EA6!important;color:#fff!important}
.level2-book-now:hover,.level2-book-now:focus-visible{background:#123F87!important;border-color:#123F87!important;color:#fff!important}
.level2-candidate-enquiry{background:#FFC107!important;border-color:#FFC107!important;color:#111827!important}
.level2-candidate-enquiry:hover,.level2-candidate-enquiry:focus-visible{background:#E7AF00!important;border-color:#E7AF00!important;color:#111827!important}
@media(max-width:620px){
  #courses .availability-head{gap:12px 18px}
  #courses .availability-head h3{font-size:1.35rem}
  #courses .availability-head>.price-display .price-main{font-size:1.42rem}
}

/* V97 NVQ BACS checkout */
.bacs-option{background:#fff8dc;border-color:#f0cf62}
.bacs-option .consent-kicker{color:#765900}
.bacs-option .bacs-note{margin:10px 0 0;color:#5f4a00}

/* V101: balanced exam-guidance layout. */
.exam-basics-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.exam-basics-grid>.card{min-width:0}
@media(max-width:760px){.exam-basics-grid{grid-template-columns:1fr}}


/* v103: SiteRevision cross-link CTA alignment and contrast */
#siterevision-library .siterevision-card-cta{display:flex;width:max-content;max-width:100%;margin:18px auto 0;align-items:center;justify-content:center;text-align:center}
#siterevision-library .siterevision-guides-cta{background:#FFC107!important;border-color:#FFC107!important;color:#111827!important}
#siterevision-library .siterevision-guides-cta:visited,#siterevision-library .siterevision-guides-cta:hover,#siterevision-library .siterevision-guides-cta:focus-visible{color:#111827!important}
#siterevision-library .siterevision-guides-cta:hover,#siterevision-library .siterevision-guides-cta:focus-visible{background:#E7AF00!important;border-color:#E7AF00!important}

/* v104: SiteRevision category layout and CTA spacing */
#siterevision-library .siterevision-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
#siterevision-library .siterevision-category-grid>.card{display:flex;flex-direction:column;min-width:0}
#siterevision-library .siterevision-category-grid>.card>p{flex:1}
#siterevision-library .siterevision-card-actions{gap:12px;flex-wrap:wrap;margin-top:18px}
#siterevision-library .siterevision-card-actions .btn{margin:0}
#siterevision-library .siterevision-main-actions{gap:14px;flex-wrap:wrap}
@media(max-width:1050px){#siterevision-library .siterevision-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){#siterevision-library .siterevision-category-grid{grid-template-columns:1fr}#siterevision-library .siterevision-card-actions,#siterevision-library .siterevision-main-actions{gap:10px}}


/* v105: cleaner SiteRevision card actions */
#siterevision-library .siterevision-card-actions{display:flex;align-items:stretch;justify-content:center;gap:14px;width:100%;flex-wrap:nowrap;margin-top:18px}
#siterevision-library .siterevision-card-actions .btn{flex:1 1 0;min-width:0;width:auto;margin:0;text-align:center;justify-content:center}
@media(max-width:620px){#siterevision-library .siterevision-card-actions{gap:12px}}

/* V106 cross-site SEO / learner journey */
.seo-link-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.cross-site-study .cta-panel{align-items:center}.cross-site-study .btn{white-space:normal;text-align:center}@media(max-width:640px){.seo-link-actions{width:100%;flex-direction:column;align-items:stretch}.seo-link-actions .btn{width:100%;justify-content:center}}
