/* =========================================================
   MAZE Training Courses - one shared stylesheet
   Used by template-training-course-flexible.php for every
   course page (Truck Dispatcher, Freight Broker, Truck Safety,
   CTPAT, Hours of Service ...). Scoped to .section-cu-de only.
   Layer order: course -> theme -> reset
   ========================================================= */
@layer course, theme, reset;

@layer reset {
  .section-cu-de,
  .section-cu-de :not(svg, svg *) {
    all: revert;
  }
}

@layer course {

/* Variables + base */
.section-cu-de{
  --navy:#102542 !important; --navy-2:#173559 !important; --blue:#17a2ef !important; --blue-d:#0b7cc1 !important; --blue-soft:#e8f5fd !important;
  --orange:#f58434 !important; --orange-d:#c4651b !important; --orange-soft:rgba(245,132,52,.12) !important;
  --ground:#ffffff !important; --tint:#f3f7fb !important; --line:#dde5ee !important;
  --text:#1f2b3b !important; --muted:#5a6a7e !important; --white:#ffffff !important;
  --head:"Plus Jakarta Sans","Segoe UI",Roboto,Arial,sans-serif !important;
  --body:"Source Sans 3","Segoe UI",Roboto,Arial,sans-serif !important;
  --r:14px !important; --shadow:0 18px 40px -18px rgba(16,37,66,.28) !important;
  color:var(--text) !important;
  font:17px/1.65 var(--body) !important;
  padding-block:28px !important;
}
.section-cu-de,
.section-cu-de *,
.section-cu-de *::before,
.section-cu-de *::after{box-sizing:border-box !important}
html:has(.section-cu-de){scroll-behavior:smooth !important}
.section-cu-de img{display:block !important;max-width:100% !important;height:auto !important}
.section-cu-de a{color:inherit !important}
.section-cu-de h1,.section-cu-de h2,.section-cu-de h3,.section-cu-de h4{font-family:var(--head) !important;margin:0 !important;line-height:1.18 !important;text-wrap:balance !important;color:var(--navy) !important}
.section-cu-de p{margin:0 !important}
.section-cu-de ul{margin:0 !important;padding:0 !important;list-style:none !important}
.section-cu-de .wrap{max-width:1200px !important;margin-inline:auto !important;padding-inline:20px !important}
.section-cu-de.tint{background:var(--tint) !important}
.section-cu-de .kicker{display:inline-flex !important;align-items:center !important;gap:8px !important;font:700 13px/1 var(--head) !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--blue-d) !important}
.section-cu-de .kicker::before{content:"" !important;width:22px !important;height:3px !important;border-radius:2px !important;background:var(--orange) !important}
.section-cu-de .head{display:grid !important;gap:10px !important;max-width:760px !important;margin-bottom:16px !important}
.section-cu-de .head.c{text-align:center !important;margin-inline:auto !important;justify-items:center !important}
.section-cu-de .head h2{font-size:clamp(28px,3.4vw,40px) !important;font-weight:800 !important}
.section-cu-de .head p{color:var(--muted) !important;font-size:18px !important}
.section-cu-de .head.wide{max-width:1100px !important}
.section-cu-de .head p.oneline{max-width:none !important;white-space:nowrap !important}
.section-cu-de .head p.oneline2{max-width:940px !important}
@media (max-width:1040px){.section-cu-de .head p.oneline{white-space:normal !important}}
.section-cu-de .btn{white-space:nowrap !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;border:0 !important;border-radius:10px !important;padding:15px 26px !important;font:700 16px/1 var(--head) !important;text-decoration:none !important;cursor:pointer !important;transition:transform .18s,box-shadow .18s,background .18s !important}
.section-cu-de .btn-o{background:var(--orange) !important;color:#fff !important;box-shadow:0 10px 22px -10px rgba(245,132,52,.8) !important}
.section-cu-de .btn-o:hover{background:var(--orange-d) !important;transform:translateY(-2px) !important}
.section-cu-de .btn-ghost{background:rgba(255,255,255,.1) !important;color:#f58434 !important;border:1.5px solid rgba(255,255,255,.45) !important}
.section-cu-de .btn-ghost:hover{background:rgba(255,255,255,.2) !important}
.section-cu-de .btn-b{background:var(--blue) !important;color:#fff !important}
.section-cu-de .btn-b:hover{background:var(--blue-d) !important}
.section-cu-de .btn svg{width:18px !important;height:18px !important}
.section-cu-de :focus-visible{outline:3px solid var(--blue) !important;outline-offset:3px !important}
@media (prefers-reduced-motion:reduce){
  html:has(.section-cu-de){scroll-behavior:auto !important}
  .section-cu-de *{transition:none!important}
}

/* Phone + email links */
.section-cu-de a[href^="tel:"],.section-cu-de a[href^="mailto:"]{cursor:pointer !important;text-decoration:none !important}
.section-cu-de .is a[href^="tel:"]{border-bottom:1px solid rgba(11,124,193,.35) !important}
.section-cu-de .is a[href^="tel:"]:hover{border-bottom-color:var(--blue-d) !important;text-decoration:none !important}
.section-cu-de details a[href^="tel:"]{color:var(--blue-d) !important;font-weight:700 !important}

/* Hero */
.section-cu-de.hero{position:relative !important;color:#fff !important;padding-block:26px 78px !important;background-color:var(--navy) !important;background-position:center !important;background-size:cover !important;background-repeat:no-repeat !important;isolation:isolate !important}
.section-cu-de.hero::before{content:"" !important;position:absolute !important;inset:0 !important;z-index:-1 !important;background:linear-gradient(100deg,rgba(16,37,66,.96) 0%,rgba(16,37,66,.88) 45%,rgba(16,37,66,.55) 100%) !important}
.section-cu-de .hero-grid{display:grid !important;grid-template-columns:1.25fr .9fr !important;gap:48px !important;align-items:center !important}
.section-cu-de .crumb{font-size:14px !important;color:#aebfd4 !important;margin-bottom:12px !important}
.section-cu-de .crumb a{text-decoration:none !important;color:#dce6f2 !important}
.section-cu-de .crumb a:hover{color:#fff !important}
.section-cu-de .crumb span{margin-inline:8px !important;color:var(--orange) !important}
.section-cu-de .pill{display:inline-flex !important;align-items:center !important;gap:8px !important;background:rgba(23,162,239,.18) !important;border:1px solid rgba(23,162,239,.55) !important;color:#d5eefc !important;border-radius:40px !important;padding:7px 14px !important;font:600 14px/1 var(--head) !important}
.section-cu-de .pill i{width:8px !important;height:8px !important;border-radius:50% !important;background:var(--blue) !important;box-shadow:0 0 0 4px rgba(23,162,239,.3) !important}
.section-cu-de.hero h1{color:#fff !important;font-size:clamp(30px,3.8vw,46px) !important;font-weight:800 !important;letter-spacing:-.01em !important;margin-top:0 !important}
.section-cu-de.hero h1 span{color:var(--orange) !important}
.section-cu-de .tagline{margin-top:10px !important;font:700 17px/1.3 var(--head) !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--blue) !important}
.section-cu-de .tagline b{color:#fff !important}
.section-cu-de.hero .lede{margin-top:10px !important;font-size:18px !important;color:#d6e0ec !important;max-width:600px !important}
.section-cu-de .facts{display:flex !important;flex-wrap:wrap !important;gap:8px !important;margin-top:16px !important}
.section-cu-de .facts li{display:inline-flex !important;align-items:center !important;gap:8px !important;background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.18) !important;border-radius:10px !important;padding:9px 14px !important;font-weight:600 !important;font-size:15.5px !important}
.section-cu-de .facts svg{width:18px !important;height:18px !important;color:var(--orange) !important}
.section-cu-de .hero-cta{display:flex !important;flex-wrap:wrap !important;gap:12px !important;margin-top:18px !important}
.section-cu-de .rating{display:flex !important;align-items:center !important;gap:12px !important;margin-top:14px !important;color:#c9d6e6 !important;font-size:15.5px !important}
.section-cu-de .stars{color:#ffb400 !important;letter-spacing:2px !important;font-size:18px !important}
.section-cu-de .rating b{color:#fff !important}

.section-cu-de .cb-card{background:rgba(17,18,21,.52) !important;backdrop-filter:blur(14px) !important;-webkit-backdrop-filter:blur(14px) !important;border:1px solid rgba(255,255,255,.22) !important;border-radius:16px !important;padding:26px 26px 24px !important;box-shadow:0 30px 70px -25px rgba(0,0,0,.7) !important}
.section-cu-de .cb-card h2{color:#fff !important;font-size:26px !important;letter-spacing:.02em !important;text-transform:uppercase !important}
.section-cu-de .cb-card h2 span{color:var(--orange) !important}
.section-cu-de .cb-card > p{color:#b9c8da !important;margin:6px 0 16px !important;font-size:15px !important}
.section-cu-de .cb-card .form{gap:12px !important}
.section-cu-de .cb-card .fld label{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0 0 0 0) !important}
.section-cu-de .cb-card .fld input,.section-cu-de .cb-card .fld select{background:rgba(255,255,255,.10) !important;border:1px solid rgba(255,255,255,.22) !important;color:#fff !important;padding:13px 14px !important;border-radius:8px !important}
.section-cu-de .cb-card .fld input::placeholder{color:#a9b9cc !important}
.section-cu-de .cb-card .fld select{color:#fff !important}
.section-cu-de .cb-card .fld select option{color:#1f2b3b !important}
.section-cu-de .cb-card .fld input:focus,.section-cu-de .cb-card .fld select:focus{background:rgba(255,255,255,.14) !important;border-color:var(--orange) !important;box-shadow:0 0 0 3px rgba(245,132,52,.25) !important}
.section-cu-de .cb-card .btn{width:100% !important;letter-spacing:.08em !important;text-transform:uppercase !important}
.section-cu-de .cb-card .ok{background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.3) !important;color:#fff !important}

/* Forms */
.section-cu-de .form{display:grid !important;gap:14px !important}
.section-cu-de .form .row-form-cu{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.section-cu-de .fld{display:grid !important;gap:6px !important}
.section-cu-de .fld label{font:600 14px/1 var(--head) !important;color:var(--navy) !important}
.section-cu-de .fld input,.section-cu-de .fld select,.section-cu-de .fld textarea{width:100% !important;font:500 16px var(--body) !important;color:var(--text) !important;background:var(--tint) !important;border:1.5px solid var(--line) !important;border-radius:10px !important;padding:12px 14px !important;transition:border-color .15s,background .15s !important}
.section-cu-de .fld textarea{min-height:110px !important;resize:vertical !important;height:110px !important}
.section-cu-de .fld input:focus,.section-cu-de .fld select:focus,.section-cu-de .fld textarea:focus{outline:none !important;border-color:var(--blue) !important;background:#fff !important;box-shadow:0 0 0 4px rgba(23,162,239,.15) !important}
.section-cu-de .form .btn{width:100% !important}
.section-cu-de .note{font-size:14px !important;color:var(--muted) !important;display:flex !important;gap:8px !important;align-items:center !important}
.section-cu-de .note svg{width:16px !important;height:16px !important;color:#1f9d55 !important;flex:none !important}
.section-cu-de .ok{display:none !important;background:#e9f8ef !important;color:#17663a !important;border:1px solid #b9e6c9 !important;border-radius:10px !important;padding:12px 14px !important;font-weight:600 !important}
.section-cu-de .ok.show{display:block !important}
@media (max-width:980px){
  .section-cu-de .hero-grid{grid-template-columns:1fr !important}
  .section-cu-de.hero{padding-block:48px 120px !important}
}
@media (max-width:480px){
  .section-cu-de .form .row-form-cu{grid-template-columns:1fr !important}
  .section-cu-de .cb-card{padding:22px !important}
}

/* Stats */
.section-cu-de.stats{margin-top:-50px !important;position:relative !important;z-index:2 !important;padding-block:0 !important}
.section-cu-de .stats-card{background:#fff !important;border-radius:18px !important;box-shadow:var(--shadow) !important;display:grid !important;grid-template-columns:repeat(4,1fr) !important;border:1px solid var(--line) !important}
.section-cu-de .stat{padding:26px 22px !important;display:flex !important;align-items:center !important;gap:16px !important}
.section-cu-de .stat+.stat{border-left:1px solid var(--line) !important}
.section-cu-de .stat .ic{width:54px !important;height:54px !important;border-radius:14px !important;display:grid !important;place-items:center !important;flex:none !important;background:var(--blue-soft) !important;color:var(--blue-d) !important}
.section-cu-de .stat:nth-child(even) .ic{background:var(--orange-soft) !important;color:var(--orange-d) !important}
.section-cu-de .stat .ic svg{width:26px !important;height:26px !important}
.section-cu-de .stat b{display:block !important;font:800 30px/1.05 var(--head) !important;color:var(--navy) !important;font-variant-numeric:tabular-nums !important}
.section-cu-de .stat small{color:var(--muted) !important;font-size:15px !important;line-height:1.3 !important;display:block !important}
@media (max-width:900px){
  .section-cu-de .stats-card{grid-template-columns:1fr 1fr !important}
  .section-cu-de .stat:nth-child(3){border-left:0 !important}
  .section-cu-de .stat:nth-child(n+3){border-top:1px solid var(--line) !important}
}
@media (max-width:460px){
  .section-cu-de .stats-card{grid-template-columns:1fr !important}
  .section-cu-de .stat+.stat{border-left:0 !important;border-top:1px solid var(--line) !important}
}

/* Overview */
.section-cu-de .ov{display:grid !important;grid-template-columns:1.15fr 1fr !important;gap:44px !important;align-items:center !important}
.section-cu-de .ov-media{position:relative !important}
.section-cu-de .ov-media img{border-radius:18px !important;aspect-ratio:1/1 !important;object-fit:cover !important;width:100% !important;box-shadow:var(--shadow) !important}
.section-cu-de .badge-hrs{position:absolute !important;right:-18px !important;bottom:-22px !important;background:var(--orange) !important;color:#fff !important;border-radius:16px !important;padding:18px 22px !important;box-shadow:var(--shadow) !important;text-align:center !important}
.section-cu-de .badge-hrs b{display:block !important;font:800 42px/1 var(--head) !important}
.section-cu-de .badge-hrs small{font:700 13px/1.2 var(--head) !important;letter-spacing:.08em !important;text-transform:uppercase !important}
.section-cu-de .ov-text{display:grid !important;gap:18px !important}
.section-cu-de .ov-text h2{font-size:clamp(28px,3.2vw,38px) !important;font-weight:800 !important}
.section-cu-de .ov-text p{color:#3a4a5e !important}
.section-cu-de .ticks{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px 20px !important;margin-top:6px !important}
.section-cu-de .ticks li{display:flex !important;gap:10px !important;align-items:flex-start !important;font-weight:600 !important;color:var(--navy) !important;line-height:1.35 !important;font-size:17px!important;}
.section-cu-de .ticks svg{width:22px !important;height:22px !important;flex:none !important;color:#fff !important;background:var(--blue) !important;border-radius:50% !important;padding:4px !important}
@media (max-width:900px){
  .section-cu-de .ov{grid-template-columns:1fr !important}
  .section-cu-de .badge-hrs{right:12px !important}
}
@media (max-width:480px){.section-cu-de .ticks{grid-template-columns:1fr !important}}

/* Schedule */
.section-cu-de .sched{display:grid !important;grid-template-columns:1fr 1fr 1.05fr !important;gap:22px !important;align-items:start !important}
.section-cu-de .card{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;overflow:hidden !important;box-shadow:0 8px 24px -16px rgba(16,37,66,.25) !important}
.section-cu-de .card-h{display:flex !important;justify-content:space-between !important;align-items:center !important;gap:10px !important;padding:18px 22px !important;background:var(--navy) !important;color:#fff !important}
.section-cu-de .card-h h3{color:#fff !important;font-size:19px !important}
.section-cu-de .card-h span{font:700 12px/1 var(--head) !important;letter-spacing:.08em !important;text-transform:uppercase !important;background:var(--orange) !important;padding:6px 9px !important;border-radius:6px !important}
.section-cu-de .card-h.next span{background:var(--blue) !important}
.section-cu-de .sessions{padding:10px 22px 18px !important}
.section-cu-de .grp{font:700 13px/1 var(--head) !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--muted) !important;margin:16px 0 8px !important}
.section-cu-de .ses{display:grid !important;grid-template-columns:auto 1fr !important;gap:14px !important;align-items:center !important;padding:10px 0 !important;border-bottom:1px dashed var(--line) !important}
.section-cu-de .ses:last-child{border-bottom:0 !important}
.section-cu-de .date{width:58px !important;text-align:center !important;border-radius:10px !important;padding:7px 4px !important;background:var(--blue-soft) !important;color:var(--blue-d) !important}
.section-cu-de .date.cl{background:var(--orange-soft) !important;color:var(--orange-d) !important}
.section-cu-de .date small{display:block !important;font:700 11px/1 var(--head) !important;letter-spacing:.1em !important}
.section-cu-de .date b{display:block !important;font:800 19px/1.15 var(--head) !important}
.section-cu-de .ses strong{display:block !important;color:var(--navy) !important;font-size:16px !important;line-height:1.3 !important}
.section-cu-de .ses em{font-style:normal !important;color:var(--muted) !important;font-size:15px !important;font-variant-numeric:tabular-nums !important}
.section-cu-de .info{padding:6px 22px 22px !important}
.section-cu-de .info-blk{padding:16px 0 !important;border-bottom:1px solid var(--line) !important;display:grid !important;gap:8px !important}
.section-cu-de .info-blk:last-child{border-bottom:0 !important;padding-bottom:0 !important}
.section-cu-de .info-blk h4{font-size:15px !important;display:flex !important;align-items:center !important;gap:9px !important}
.section-cu-de .info-blk h4 svg{width:20px !important;height:20px !important;color:var(--orange) !important}
.section-cu-de .info-blk p,.section-cu-de .info-blk li{font-size:15.5px !important;color:#3a4a5e !important;line-height:1.45 !important}
.section-cu-de .info-blk li{padding-left:16px !important;position:relative !important;margin-top:4px !important}
.section-cu-de .info-blk li::before{content:"" !important;position:absolute !important;left:0 !important;top:9px !important;width:6px !important;height:6px !important;border-radius:50% !important;background:var(--blue) !important}
.section-cu-de .info-blk a{color:var(--blue-d) !important;font-weight:700 !important;text-decoration:none !important}
.section-cu-de .legend{display:flex !important;gap:18px !important;justify-content:center !important;margin-top:22px !important;color:var(--muted) !important;font-size:15px !important;flex-wrap:wrap !important}
.section-cu-de .legend i{display:inline-block !important;width:12px !important;height:12px !important;border-radius:4px !important;vertical-align:-1px !important;margin-right:6px !important;background:var(--blue-soft) !important;border:2px solid var(--blue) !important}
.section-cu-de .legend i.cl{background:var(--orange-soft) !important;border-color:var(--orange) !important}
@media (max-width:1000px){
  .section-cu-de .sched{grid-template-columns:1fr 1fr !important}
  .section-cu-de .sched .card:last-child{grid-column:1/-1 !important}
}
@media (max-width:640px){.section-cu-de .sched{grid-template-columns:1fr !important}}

/* 4 course options */
.section-cu-de .opts-h{text-align:center !important;margin-bottom:14px !important}
.section-cu-de .opts-h h3{font-size:22px !important;color:var(--navy) !important}
.section-cu-de .opts-h p{color:var(--muted) !important;font-size:18px !important;margin-top:4px !important}
.section-cu-de .opts{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:16px !important;margin-bottom:22px !important}
.section-cu-de .opt{background:#fff !important;border:2px solid var(--orange) !important;border-radius:14px !important;overflow:hidden !important;display:flex !important;flex-direction:column !important}
.section-cu-de .opt-top{display:flex !important;justify-content:space-between !important;align-items:center !important;gap:8px !important;padding:10px 14px !important;background:var(--orange-soft) !important;border-bottom:1px solid rgba(245,132,52,.35) !important}
.section-cu-de .opt-top b{font:800 12px/1 var(--head) !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--orange-d) !important}
.section-cu-de .opt-top span{font:700 12px/1 var(--head) !important;color:var(--navy) !important;background:#fff !important;border:1px solid rgba(245,132,52,.35) !important;border-radius:20px !important;padding:5px 9px !important;white-space:nowrap !important}
.section-cu-de .opt-body{padding:14px !important;display:grid !important;gap:8px !important;align-content:start !important}
.section-cu-de .opt-body small{font:700 10.5px/1.2 var(--head) !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--orange-d) !important}
.section-cu-de .opt-body h4{font-size:17px !important;color:var(--navy) !important;line-height:1.25 !important}
.section-cu-de .opt-body ul{display:grid !important;gap:6px !important;margin-top:2px !important}
.section-cu-de .opt-body li{display:flex !important;gap:8px !important;align-items:flex-start !important;font-size:14.5px !important;line-height:1.35 !important;color:#3a4a5e !important}
.section-cu-de .opt-body li svg{width:15px !important;height:15px !important;flex:none !important;margin-top:3px !important;color:var(--orange-d) !important}
.section-cu-de .opt-body li b{color:var(--navy) !important;font-weight:700 !important}
@media (max-width:1080px){.section-cu-de .opts{grid-template-columns:1fr 1fr !important}}
@media (max-width:560px){.section-cu-de .opts{grid-template-columns:1fr !important}}

/* Course info strip + course schedule */
.section-cu-de .info-strip{display:grid !important;grid-template-columns:1fr 1fr 1.5fr !important;background:#fff !important;border:3px solid var(--blue) !important;border-radius:16px !important;overflow:hidden !important;margin-bottom:22px !important;box-shadow:0 0 0 8px rgba(23,162,239,.10),0 20px 40px -30px rgba(16,37,66,.5) !important}
.section-cu-de .is{padding:20px 22px !important;display:grid !important;gap:6px !important;align-content:start !important}
.section-cu-de .is+.is{border-left:1px solid var(--line) !important}
.section-cu-de .is h3{font-size:14px !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--muted) !important;display:flex !important;gap:8px !important;align-items:center !important}
.section-cu-de .is h3 svg{width:20px !important;height:20px !important;color:var(--orange) !important}
.section-cu-de .is p,.section-cu-de .is li{font-size:15.5px !important;line-height:1.45 !important;color:#3a4a5e !important}
.section-cu-de .is strong{font:800 22px/1.2 var(--head) !important;color:var(--navy) !important}
.section-cu-de .is a{color:var(--blue-d) !important;font-weight:700 !important;text-decoration:none !important;white-space:nowrap !important}
.section-cu-de .is li{padding-left:14px !important;position:relative !important}
.section-cu-de .is li::before{content:"" !important;position:absolute !important;left:0 !important;top:9px !important;width:6px !important;height:6px !important;border-radius:50% !important;background:var(--blue) !important}
.section-cu-de .months{display:grid !important;grid-template-columns:1fr 1fr !important;gap:20px !important;align-items:stretch !important}
.section-cu-de .month{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;overflow:hidden !important;display:flex !important;flex-direction:column !important;height:100% !important}
.section-cu-de .month-h{display:flex !important;justify-content:space-between !important;align-items:center !important;gap:10px !important;padding:16px 20px !important;background:var(--navy) !important}
.section-cu-de .month-h h3{color:#fff !important;font-size:22px !important}
.section-cu-de .month-h span{font:700 12px/1 var(--head) !important;letter-spacing:.08em !important;text-transform:uppercase !important;background:var(--orange) !important;color:#fff !important;padding:7px 10px !important;border-radius:6px !important}
.section-cu-de .month:nth-child(2) .month-h span{background:var(--blue) !important}
.section-cu-de .crow{display:grid !important;grid-template-columns:190px 1fr !important;gap:14px !important;align-items:center !important;padding:14px 20px !important;border-bottom:1px solid var(--line) !important}
.section-cu-de .crow:last-of-type{border-bottom:0 !important}
.section-cu-de .cname{display:grid !important;gap:3px !important;border-left:4px solid var(--blue) !important;padding-left:12px !important}
.section-cu-de .crow.cls .cname{border-left-color:var(--orange) !important}
.section-cu-de .cname .fmt{font:700 10.5px/1 var(--head) !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--blue-d) !important}
.section-cu-de .crow.cls .cname .fmt{color:var(--orange-d) !important}
.section-cu-de .cname h4{font-size:15.5px !important;line-height:1.25 !important}
.section-cu-de .cname p{display:flex !important;gap:6px !important;align-items:center !important;font-size:13.5px !important;color:var(--muted) !important;line-height:1.3 !important;font-variant-numeric:tabular-nums !important}
.section-cu-de .cname svg{width:14px !important;height:14px !important;flex:none !important;color:var(--blue-d) !important}
.section-cu-de .crow.cls .cname svg{color:var(--orange-d) !important}
.section-cu-de .cdates{display:grid !important;gap:6px !important;justify-items:start !important}
.section-cu-de .cdates .chips{width:100% !important}
.section-cu-de .bl{display:inline-flex !important;align-items:center !important;font:800 10px/1 var(--head) !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--navy) !important;background:#fff !important;border:1.5px solid var(--navy) !important;border-radius:5px !important;padding:4px 8px !important;justify-self:start !important}
.section-cu-de .crow.cls .bl{border-color:var(--orange-d) !important;color:var(--orange-d) !important}
.section-cu-de .chips{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px !important}
.section-cu-de .chip{display:grid !important;text-align:center !important;min-width:0 !important;border:1.5px solid #cfe6f7 !important;background:var(--blue-soft) !important;border-radius:9px !important;padding:5px 2px !important}
.section-cu-de .crow.cls .chip{border-color:rgba(245,132,52,.35) !important;background:var(--orange-soft) !important}
.section-cu-de .chip small{font:700 10.5px/1.1 var(--head) !important;letter-spacing:.06em !important;color:var(--muted) !important;text-transform:uppercase !important}
.section-cu-de .chip em{font:800 14.5px/1.15 var(--head) !important;font-style:normal !important;color:var(--navy) !important;white-space:nowrap !important}
.section-cu-de .mbtn{margin:14px 20px 18px !important;margin-top:auto !important;align-self:flex-start !important;padding:12px 20px !important;font-size:15px !important}
@media (max-width:1080px){
  .section-cu-de .months{grid-template-columns:1fr !important}
  .section-cu-de .info-strip{grid-template-columns:1fr 1fr !important}
  .section-cu-de .is:nth-child(3){border-left:0 !important;border-top:1px solid var(--line) !important}
}
@media (max-width:600px){
  .section-cu-de .info-strip{grid-template-columns:1fr !important}
  .section-cu-de .is+.is{border-left:0 !important;border-top:1px solid var(--line) !important}
  .section-cu-de .crow{grid-template-columns:1fr !important}
}

/* Full-bleed section bands */
.section-cu-de.band-orange{position:relative !important;isolation:isolate !important;overflow:hidden !important;color:#fff !important;background:
  radial-gradient(circle at 12% 18%,rgba(255,255,255,.22),transparent 26%),
  radial-gradient(circle at 88% 82%,rgba(255,255,255,.18),transparent 30%),
  linear-gradient(120deg,var(--orange) 0%,var(--orange) 100%) !important}
/* Pattern image comes from the admin (inline --mz-band-pattern on the section). */
.section-cu-de.band-orange::before{content:"" !important;position:absolute !important;inset:0 !important;z-index:-1 !important;background:var(--mz-band-pattern,none) center/cover no-repeat !important;opacity:.18 !important;mix-blend-mode:soft-light !important}
.section-cu-de.band-orange::after{content:"" !important;position:absolute !important;right:-70px !important;top:-70px !important;width:260px !important;height:260px !important;border-radius:50% !important;border:40px solid rgba(255,255,255,.12) !important;z-index:-1 !important}
.section-cu-de.band-orange .head h2{color:#fff !important}
.section-cu-de.band-orange .head p{color:rgba(255,255,255,.92) !important}
.section-cu-de.band-orange .kicker{color:rgba(255,255,255,.95) !important}
.section-cu-de.band-orange .kicker::before{background:#fff !important}
.section-cu-de.band-orange .roles{margin-top:0 !important}
.section-cu-de.band-orange .role{border:0 !important;box-shadow:0 20px 40px -28px rgba(80,40,0,.7) !important}
.section-cu-de.band-orange .role .ic{background:var(--navy) !important}
.section-cu-de.band-orange .role:nth-child(2) .ic{background:var(--blue-d) !important}
.section-cu-de.band-light{background:#f1f3f6 !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important}
.section-cu-de.band-light .day{box-shadow:0 14px 30px -24px rgba(16,37,66,.55) !important}

/* Schedule note (fee + locations) */
.section-cu-de .sched-note{margin-top:16px !important;background:#fff !important;border:1px solid var(--line) !important;border-radius:12px !important;padding:18px 22px !important;display:grid !important;grid-template-columns:1fr 1.25fr !important;gap:22px !important;box-shadow:0 8px 24px -20px rgba(16,37,66,.4) !important}
.section-cu-de .sn-item{display:flex !important;gap:12px !important;align-items:flex-start !important}
.section-cu-de .sn-item+.sn-item{border-left:1px solid var(--line) !important;padding-left:22px !important}
.section-cu-de .sn-ic{width:38px !important;height:38px !important;border-radius:10px !important;background:var(--orange-soft) !important;display:grid !important;place-items:center !important;flex:none !important}
.section-cu-de .sn-ic svg{width:19px !important;height:19px !important;color:var(--orange-d) !important}
.section-cu-de .sn-item b{display:block !important;font:700 13px/1 var(--head) !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--muted) !important;margin-bottom:6px !important}
.section-cu-de .sn-item p{font-size:15.5px !important;line-height:1.5 !important;color:#3a4a5e !important}
.section-cu-de .sn-item p+p{margin-top:5px !important}
.section-cu-de .sn-item a{color:var(--blue-d) !important;font-weight:700 !important}
.section-cu-de .city{display:inline-block !important;width:112px !important;box-sizing:border-box !important;vertical-align:middle !important;font:800 12px/1 var(--head) !important;letter-spacing:.06em !important;text-transform:uppercase !important;color:var(--orange-d) !important;background:var(--orange-soft) !important;border:1px solid rgba(245,132,52,.35) !important;border-radius:6px !important;padding:5px 8px !important;margin-right:8px !important;text-align:center !important}
@media (max-width:820px){
  .section-cu-de .sched-note{grid-template-columns:1fr !important}
  .section-cu-de .sn-item+.sn-item{border-left:0 !important;border-top:1px solid var(--line) !important;padding-left:0 !important;padding-top:16px !important}
}

/* Audience */
.section-cu-de .aud{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:22px !important}
.section-cu-de .aud-c{background:#fff !important;border-radius:var(--r) !important;overflow:hidden !important;border:1px solid var(--line) !important;transition:transform .2s,box-shadow .2s !important;display:flex !important;flex-direction:column !important}
.section-cu-de .aud-c:hover{transform:translateY(-4px) !important;box-shadow:var(--shadow) !important}
.section-cu-de .aud-c img{aspect-ratio:4/3 !important;object-fit:cover !important;width:100% !important}
.section-cu-de .aud-c div{padding:20px !important;display:grid !important;gap:8px !important}
.section-cu-de .aud-c h3{font-size:18.5px !important}
.section-cu-de .aud-c p{color:var(--muted) !important;font-size:15.5px !important;line-height:1.5 !important}
@media (max-width:1000px){.section-cu-de .aud{grid-template-columns:1fr 1fr !important}}
@media (max-width:520px){.section-cu-de .aud{grid-template-columns:1fr !important}}

/* Program copy + roles */
.section-cu-de .prog{display:grid !important;grid-template-columns:1fr !important;gap:0 !important}
.section-cu-de .prog-text{display:grid !important;gap:16px !important;max-width:none !important}
.section-cu-de .prog-text h2{font-size:clamp(26px,3vw,36px) !important;font-weight:800 !important}
.section-cu-de .prog-text p{color:#3a4a5e !important}
.section-cu-de .prog-img{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.section-cu-de .prog-img img{border-radius:14px !important;object-fit:cover !important;width:100% !important;aspect-ratio:4/3 !important}
.section-cu-de .prog-img img:first-child{grid-column:1/-1 !important;aspect-ratio:16/9 !important}
.section-cu-de .roles{display:grid !important;grid-template-columns:1fr 1fr !important;gap:18px !important;margin-top:18px !important}
.section-cu-de .role{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;padding:24px !important;display:grid !important;gap:12px !important;align-content:start !important}
.section-cu-de .role .ic{width:52px !important;height:52px !important;border-radius:14px !important;display:grid !important;place-items:center !important;background:var(--blue) !important;color:#fff !important}
.section-cu-de .role:nth-child(2) .ic{background:var(--orange) !important}
.section-cu-de .role .ic svg{width:26px !important;height:26px !important}
.section-cu-de .role h3{font-size:22px !important}
.section-cu-de .role p{color:#3a4a5e !important;font-size:16.5px !important}
@media (max-width:900px){
  .section-cu-de .prog,
  .section-cu-de .roles{grid-template-columns:1fr !important}
}

/* Curriculum - dark staggered day cards */
.section-cu-de .days{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap: 40px 15px !important;align-items:stretch !important;padding-top:32px !important}
.section-cu-de .day{position:relative !important;background:#1b1e24 !important;border:2px solid #2b3039 !important;border-radius:16px !important;padding:52px 16px 18px !important;box-shadow:0 22px 40px -28px rgba(10,20,35,.85) !important}
.section-cu-de .day-n{position:absolute !important;top:-28px !important;left:16px !important;width:64px !important;height:64px !important;border-radius:50% !important;background:var(--orange) !important;color:#fff !important;display:grid !important;place-content:center !important;text-align:center !important;line-height:1 !important;box-shadow:0 0 0 6px #f1f3f6 !important}
.section-cu-de .day-n small{display:block !important;font:800 10px/1 var(--head) !important;letter-spacing:.18em !important}
.section-cu-de .day-n b{display:block !important;font:800 24px/1.1 var(--head) !important}
.section-cu-de .day h3{margin:0 0 8px !important;color:#fff !important;font-size:16px !important;min-height:52px !important}
.section-cu-de .day h3 span{display:block !important;font:600 12px/1.3 var(--body) !important;color:#a7b0bb !important;letter-spacing:.02em !important;margin-top: 7px !important;}
.section-cu-de .day ul{display:grid !important;gap:2px !important;margin-top:6px !important}
.section-cu-de .day li{display:flex !important;gap:9px !important;align-items:flex-start !important;padding:6px 0 !important;font-size:13.8px !important;line-height:1.35 !important;color:#e6e8ec !important;border-bottom:1px solid rgba(255,255,255,.07) !important}
.section-cu-de .day li:last-child{border-bottom:0 !important}
.section-cu-de .day li svg{width:16px !important;height:16px !important;flex:none !important;margin-top:2px !important;color:#fff !important;background:var(--orange) !important;border-radius:50% !important;padding:3px !important}
.section-cu-de .day li.pr{font-weight:700 !important;color:#fff !important}
.section-cu-de .tagp{display:inline-block !important;font:700 9.5px/1 var(--head) !important;letter-spacing:.06em !important;background:rgba(245,132,52,.22) !important;color:var(--orange) !important;border-radius:5px !important;padding:4px 5px !important;margin-left:5px !important;white-space:nowrap !important;vertical-align:1px !important}
@media (max-width:1000px){.section-cu-de .days{grid-template-columns:1fr 1fr !important}}
@media (max-width:560px){.section-cu-de .days{grid-template-columns:1fr !important}}

/* Why */
.section-cu-de .why{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:22px !important}
.section-cu-de .why-c{background:#fff !important;border-radius:var(--r) !important;overflow:hidden !important;border:1px solid var(--line) !important;display:flex !important;flex-direction:column !important}
.section-cu-de .why-c figure{margin:0 !important;position:relative !important;height:200px !important;overflow:visible !important;flex:none !important}
.section-cu-de .why-c figure img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;object-fit:cover !important;object-position:center !important;display:block !important;border-radius:0 !important;filter:none !important;opacity:1 !important;transform:none !important;image-rendering:auto !important}
.section-cu-de .why-c figure span{z-index:1 !important}
.section-cu-de .why-c figure span{position:absolute !important;left:16px !important;bottom:-20px !important;width:42px !important;height:42px !important;border-radius:12px !important;background:var(--orange) !important;color:#fff !important;display:grid !important;place-items:center !important;box-shadow:0 8px 16px -6px rgba(0,0,0,.35) !important}
.section-cu-de .why-c:nth-child(even) figure span{background:var(--blue) !important}
.section-cu-de .why-c figure svg{width:22px !important;height:22px !important}
.section-cu-de .why-c div{padding:30px 20px 22px !important;display:grid !important;gap:6px !important}
.section-cu-de .why-c h3{font-size:17.5px !important}
.section-cu-de .why-c p{color:var(--muted) !important;font-size:15.5px !important;line-height:1.5 !important}
@media (max-width:1000px){.section-cu-de .why{grid-template-columns:1fr 1fr !important}}
@media (max-width:520px){.section-cu-de .why{grid-template-columns:1fr !important}}

/* Testimonials + gallery */
.section-cu-de .tgrid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:16px !important;align-items:stretch !important}
.section-cu-de .tq{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;padding:18px 20px !important;display:flex !important;flex-direction:column !important;gap:10px !important}
.section-cu-de .tq.big{background:var(--navy) !important;color:#e3ebf5 !important;border:0 !important}
.section-cu-de .tq.big blockquote{font-size:16px !important;line-height:1.55 !important;color:#fff !important}
.section-cu-de .tq blockquote{margin:0 !important;color:#34455a !important;font-size:15.5px !important;line-height:1.5 !important}
.section-cu-de .tq .mark{font:800 44px/.5 var(--head) !important;color:var(--orange) !important;height:18px !important}
.section-cu-de .who{display:flex !important;align-items:center !important;gap:10px !important;margin-top:auto !important;padding-top:10px !important;border-top:1px solid var(--line) !important}
.section-cu-de .tq.big .who{border-top-color:rgba(255,255,255,.15) !important}
.section-cu-de .av{width:38px !important;height:38px !important;border-radius:50% !important;display:grid !important;place-items:center !important;font:800 15px var(--head) !important;color:#fff !important;background:var(--blue) !important;flex:none !important}
.section-cu-de .tq:nth-child(odd) .av{background:var(--orange) !important}
.section-cu-de .who b{display:block !important;color:var(--navy) !important;line-height:1.2 !important;font-size:15.5px !important}
.section-cu-de .tq.big .who b{color:#fff !important}
.section-cu-de .who small{color:var(--muted) !important;font-size:13px !important}
.section-cu-de .tq.big .who small{color:#aebfd4 !important}
@media (max-width:1000px){.section-cu-de .tgrid{grid-template-columns:1fr 1fr !important}}
@media (max-width:560px){.section-cu-de .tgrid{grid-template-columns:1fr !important}}
.section-cu-de .gal{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:12px !important;margin-top:16px !important}
.section-cu-de .gal figure{margin:0 !important;position:relative !important;border-radius:12px !important;overflow:hidden !important}
.section-cu-de .gal img{object-fit:cover !important;width:100% !important;transition:transform .4s !important}
.section-cu-de .gal figure:hover img{transform:scale(1.05) !important}
.section-cu-de .gal figcaption{position:absolute !important;left:0 !important;right:0 !important;bottom:0 !important;padding:26px 14px 10px !important;color:#fff !important;font:600 14.5px/1.2 var(--head) !important;background:linear-gradient(transparent,rgba(16,37,66,.85)) !important}
@media (max-width:1000px){.section-cu-de .gal{grid-template-columns:1fr 1fr !important}}

/* Contact */
.section-cu-de.contact{position:relative !important;isolation:isolate !important;overflow:hidden !important;padding-block:46px !important;background:#fff !important}
.section-cu-de.contact::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 86px !important;
    bottom: 86px !important;
    z-index: -1 !important;
    background:
        var(--mz-section-pattern,none) center / cover no-repeat !important;
    background-blend-mode: normal, multiply !important;
}
@media (max-width:900px){.section-cu-de.contact::before{top:60px !important;bottom:60px !important}}
.section-cu-de .cbox{display:grid !important;grid-template-columns:.95fr 1.15fr !important;border-radius:22px !important;overflow:hidden !important;background:#1b1e24 !important;border:3px solid var(--orange) !important;box-shadow:0 0 0 10px rgba(245, 132, 52, .14), 0 31px 41px -30px rgb(0 0 0 / 97%) !important}
.section-cu-de .c-side{position:relative !important;color:#fff !important;padding:34px 32px !important;display:flex !important;flex-direction:column !important;gap:22px !important;background-color:var(--navy) !important;background-position:center !important;background-size:cover !important;background-repeat:no-repeat !important;isolation:isolate !important}
.section-cu-de .c-side::before{content:"" !important;position:absolute !important;inset:0 !important;z-index:-1 !important;background:linear-gradient(160deg,rgba(18,19,22,.95) 10%,rgba(38,41,47,.90) 60%,rgba(52,56,64,.88) 100%) !important}
.section-cu-de .c-side h2{color:#fff !important;font-size:clamp(28px,3vw,36px) !important;font-weight:800 !important}
.section-cu-de .c-side h2 span{color:var(--orange) !important}
.section-cu-de .c-side > p{color:#d6e0ec !important}
.section-cu-de .clist{display:grid !important;gap:14px !important}
.section-cu-de .clist a,.section-cu-de .clist div{display:flex !important;gap:14px !important;align-items:center !important;text-decoration:none !important;background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.14) !important;border-radius:12px !important;padding:12px 14px !important;transition:background .15s !important}
.section-cu-de .clist a:hover{background:rgba(255,255,255,.16) !important}
.section-cu-de .clist .ci{width:42px !important;height:42px !important;border-radius:10px !important;background:var(--orange) !important;display:grid !important;place-items:center !important;flex:none !important}
.section-cu-de .clist .ci svg{width:20px !important;height:20px !important;color:#fff !important}
.section-cu-de .clist small{display:block !important;color:#aebfd4 !important;font-size:13px !important;letter-spacing:.05em !important;text-transform:uppercase !important;font-weight:600 !important}
.section-cu-de .clist b{font:700 17px/1.3 var(--head) !important;word-break:break-word !important}

/* Contact form panel - dark theme */
.section-cu-de .c-form{padding:30px 32px !important;display:grid !important;gap:6px !important;align-content:center !important;background:#1b1e24 !important;color:#e6e8ec !important}
.section-cu-de .c-form h3{font-size:24px !important;color:#fff !important}
.section-cu-de .c-form > p{color:#a8b1bd !important;margin-bottom:14px !important}
.section-cu-de .c-form .form{border:1px solid rgba(255,255,255,.16) !important;border-radius:14px !important;padding:22px !important;background:rgba(255,255,255,.05) !important}
.section-cu-de .c-form .form .fld label{color:#d5dbe3 !important}
.section-cu-de .c-form .form .fld input,.section-cu-de .c-form .form .fld select,.section-cu-de .c-form .form .fld textarea{background:rgba(255,255,255,.07) !important;border:1px solid rgba(255,255,255,.22) !important;color:#fff !important}
.section-cu-de .c-form .form .fld input::placeholder,.section-cu-de .c-form .form .fld textarea::placeholder{color:#97a2b0 !important}
.section-cu-de .c-form .form .fld select option{color:#1f2b3b !important}
.section-cu-de .c-form .form .fld input:focus,.section-cu-de .c-form .form .fld select:focus,.section-cu-de .c-form .form .fld textarea:focus{background:rgba(255,255,255,.12) !important;border-color:var(--orange) !important;box-shadow:0 0 0 3px rgba(245,132,52,.25) !important}
.section-cu-de .c-form .ok{background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.28) !important;color:#fff !important}
@media (max-width:900px){.section-cu-de .cbox{grid-template-columns:1fr !important}}
@media (max-width:520px){
  .section-cu-de .c-form .form{padding:16px !important}
  .section-cu-de .c-side,.section-cu-de .c-form{padding:28px 22px !important}
}

.section-cu-de .req{color:#ff8a5c !important;font-weight:800 !important}
.section-cu-de .reqnote{font-size:13.5px !important;color:#a8b1bd !important;margin-top:-2px !important}
.section-cu-de .fld input:user-invalid,.section-cu-de .fld select:user-invalid{border-color:#e4573d !important}

/* FAQ */
.section-cu-de .faq{display:grid !important;grid-template-columns:.8fr 1.4fr !important;gap:36px !important;align-items:start !important}
.section-cu-de .faq-aside{position:sticky !important;top:110px !important;display:grid !important;gap:18px !important}
.section-cu-de .faq-aside h2{font-size:clamp(28px,3.2vw,38px) !important;font-weight:800 !important}
.section-cu-de .faq-aside p{color:var(--muted) !important}
.section-cu-de .acc{columns:2 !important;column-gap:16px !important}
.section-cu-de .acc details{break-inside:avoid !important;margin-bottom:10px !important}
@media (max-width:820px){.section-cu-de .acc{columns:1 !important}}
.section-cu-de details{background:#fff !important;border:1px solid var(--line) !important;border-radius:12px !important;overflow:hidden !important;transition:box-shadow .2s,border-color .2s,background .2s !important}
.section-cu-de details[open]{border-color:rgba(245,132,52,.55) !important;background:#fff8f2 !important;box-shadow:0 14px 30px -20px rgba(245,132,52,.6) !important}
.section-cu-de details[open] summary{background:var(--orange-soft) !important;color:var(--orange-d) !important}
.section-cu-de summary{list-style:none !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:16px !important;padding:18px 20px !important;font:700 17px/1.35 var(--head) !important;color:var(--navy) !important}
.section-cu-de summary::-webkit-details-marker{display:none !important}
.section-cu-de summary i{width:30px !important;height:30px !important;border-radius:50% !important;background:var(--blue-soft) !important;flex:none !important;position:relative !important;transition:background .2s !important}
.section-cu-de summary i::before,.section-cu-de summary i::after{content:"" !important;position:absolute !important;left:50% !important;top:50% !important;width:12px !important;height:2px !important;background:var(--blue-d) !important;transform:translate(-50%,-50%) !important}
.section-cu-de summary i::after{transform:translate(-50%,-50%) rotate(90deg) !important;transition:transform .2s !important}
.section-cu-de details[open] summary i{background:var(--orange) !important}
.section-cu-de details[open] summary i::before,.section-cu-de details[open] summary i::after{background:#fff !important}
.section-cu-de details[open] summary i::after{transform:translate(-50%,-50%) rotate(0) !important}
.section-cu-de details p{padding:20px 20px !important;color:#3a4a5e !important}
@media (max-width:900px){
  .section-cu-de .faq{grid-template-columns:1fr !important}
  .section-cu-de .faq-aside{position:static !important}
}

/* Partners */
.section-cu-de.partners{padding-block:20px !important;background:#fff !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important}
.section-cu-de.partners .head{margin-bottom:24px !important}
.section-cu-de.partners img{margin-inline:auto !important;width:100% !important;max-width:1000px !important;height:auto !important}

/* CTA */
.section-cu-de.cta{padding-block:0 28px !important}
.section-cu-de .cta-box{background:var(--orange) !important;border-radius:22px !important;padding:28px 34px !important;display:flex !important;flex-wrap:wrap !important;align-items:center !important;justify-content:space-between !important;gap:22px !important;color:#fff !important;position:relative !important;overflow:hidden !important}
.section-cu-de .cta-box::after{content:"" !important;position:absolute !important;right:-60px !important;top:-60px !important;width:240px !important;height:240px !important;border-radius:50% !important;border:38px solid rgba(255,255,255,.12) !important}
.section-cu-de .cta-box h2{color:#fff !important;font-size:clamp(24px,2.8vw,32px) !important;max-width:640px !important}
.section-cu-de .cta-box p{color:rgba(255,255,255,.9) !important;margin-top:8px !important}
.section-cu-de .cta-box .acts{display:flex !important;gap:12px !important;flex-wrap:wrap !important;position:relative !important;z-index:1 !important}
.section-cu-de .btn-w{background:#fff !important;color:var(--orange-d) !important}
.section-cu-de .btn-w:hover{transform:translateY(-2px) !important}
.section-cu-de .btn-n{background:var(--navy) !important;color:#fff !important}
.section-cu-de .btn-n:hover{background:var(--navy-2) !important}
@media (max-width:560px){
  .section-cu-de .cta-box{padding:24px 18px !important}
  .section-cu-de .cta-box::after{display:none !important}
}

/* Students photos carousel (Slick) */
.section-cu-de .gal.gal-slider{display:block !important;position:relative !important;margin:16px -6px 0 !important;padding-bottom:38px !important}
.section-cu-de .gal.gal-slider:not(.slick-initialized){display:flex !important;overflow:hidden !important}
.section-cu-de .gal-slider:not(.slick-initialized) .gal-item{flex:0 0 25% !important;min-width:0 !important}
.section-cu-de .gal-slider .gal-item{padding:0 6px !important;box-sizing:border-box !important;outline:none !important}
.section-cu-de .gal-slider figure{margin:0 !important}
.section-cu-de .gal-slider .gal-arrow{position:absolute !important;top:calc(50% - 19px) !important;transform:translateY(-50%) !important;z-index:3 !important;width:44px !important;height:44px !important;padding:0 !important;border:0 !important;border-radius:50% !important;background:#fff !important;color:var(--navy) !important;display:grid !important;place-items:center !important;cursor:pointer !important;box-shadow:0 8px 20px -8px rgba(16,37,66,.45) !important;transition:background .2s,color .2s !important}
.section-cu-de .gal-slider .gal-prev{left:-34px !important}
.section-cu-de .gal-slider .gal-next{right:-34px !important}
.section-cu-de .gal-slider .gal-arrow:hover{background:var(--orange) !important;color:#fff !important}
.section-cu-de .gal-slider .gal-arrow svg{width:20px !important;height:20px !important;display:block !important}
.section-cu-de .gal-slider .gal-arrow:focus-visible{outline:3px solid var(--blue) !important;outline-offset:3px !important}
.section-cu-de .gal-slider .slick-dots{position:absolute !important;left:0 !important;right:0 !important;bottom:0 !important;display:flex !important;justify-content:center !important;flex-wrap:wrap !important;gap:8px !important;margin:0 !important;padding:0 !important;list-style:none !important}
.section-cu-de .gal-slider .slick-dots li{margin:0 !important;padding:0 !important;line-height:0 !important}
.section-cu-de .gal-slider .slick-dots button{width:10px !important;height:10px !important;padding:0 !important;border:0 !important;border-radius:6px !important;background:var(--line) !important;font-size:0 !important;line-height:0 !important;color:transparent !important;cursor:pointer !important;transition:width .2s,background .2s !important}
.section-cu-de .gal-slider .slick-dots button:hover{background:var(--blue) !important}
.section-cu-de .gal-slider .slick-dots li.slick-active button{width:26px !important;background:var(--orange) !important}
.section-cu-de .gal-slider .slick-dots button:focus-visible{outline:3px solid var(--blue) !important;outline-offset:2px !important}
@media (max-width:1280px){
  .section-cu-de .gal-slider .gal-prev{left:-12px !important}
  .section-cu-de .gal-slider .gal-next{right:-12px !important}
}
@media (max-width:1024px){
  .section-cu-de .gal-slider:not(.slick-initialized) .gal-item{flex-basis:33.333% !important}
}
@media (max-width:768px){
  .section-cu-de .gal-slider:not(.slick-initialized) .gal-item{flex-basis:50% !important}
}
@media (max-width:480px){
  .section-cu-de .gal-slider:not(.slick-initialized) .gal-item{flex-basis:100% !important}
  .section-cu-de .gal-slider .gal-arrow{width:38px !important;height:38px !important}
  .section-cu-de .gal-slider .gal-prev{left:12px !important}
  .section-cu-de .gal-slider .gal-next{right:12px !important}
}

.section-cu-de .wpcf7-form-control-wrap{position:relative !important}
/* ---------- Contact Form 7: loader in the centre of the submit button (every form, no extra markup) ----------
   While a form is sending, the button text is hidden and a spinner is drawn inside the button.
   The default Contact Form 7 loader (next to the button) is hidden. */
.wpcf7 .wpcf7-spinner{display:none !important}
.wpcf7-form.submitting .wpcf7-submit{
  color:transparent !important;
  text-shadow:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Ccircle cx='25' cy='25' r='20' fill='none' stroke='rgba(255,255,255,.35)' stroke-width='6'/%3E%3Cpath d='M25 5a20 20 0 0 1 20 20' fill='none' stroke='white' stroke-width='6' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 25 25' to='360 25 25' dur='.7s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:22px 22px !important;
  transition:none !important;
  pointer-events:none !important;
  cursor:wait !important
}
.section-cu-de p.crumb,.section-cu-de p.crumb a,.wp-google-based,div#callback p,.section-cu-de .ov-text p,.section-cu-de .opts-h p,.section-cu-de .aud p,.section-cu-de .prog p,.section-cu-de.band-orange p,#contact p,.section-cu-de .head.c.wide p,.section-cu-de .why p,.section-cu-de .head p,.section-cu-de .acc p,.section-cu-de.cta .cta-box p,.section-cu-de .months p,.section-cu-de .sched-note p,.section-cu-de .sched-note a{font-family:'Source Sans 3'!important;line-height:1.65!important}
.section-cu-de .months .cdates p.bl{line-height:1!important;font-family:'Plus Jakarta Sans'!important}
.section-cu-de .aud-c p,.section-cu-de .why-c p,.section-cu-de .sched-note .sn-item p{line-height:1.5!important}
.section-cu-de .months .cname p{line-height:1.3!important}
.section-cu-de .tagline{line-height:1.3!important}
.why h3,.section-cu-de h3,.section-cu-de h4,.section-cu-de .cb-card h2,.section-cu-de .cb-card h2 span,.section-cu-de .cta-box h2{font-weight:700!important}
.stat span{text-align:left!important}
.section-cu-de .gal-slider .slick-slide{margin:10px 0!important}
.section-cu-de .wp-google-powered{font-family:'Source Sans 3'!important}

@media only screen and (max-width: 767px) {
  .section-cu-de .hero-grid {
    gap: 0px !important;
  }
  .section-cu-de .tagline, .hero-grid .wp-gr.wpac {
    display: none !IMPORTANT;
  }
  .section-cu-de .hero-cta {
    margin-bottom: 15px !important;
  }
  .section-cu-de .crow {
    border-bottom: 1px solid var(--navy) !important;
  }
}

@media only screen and (max-width: 520px) {
  .section-cu-de .btn {
    padding: 15px 5px !important;
    font: 700 12px/1 var(--head) !important;
    width: 150px !important;
  }
  .section-cu-de.hero {
    padding-block: 48px 70px !important;
  }
  .section-cu-de .clist b {
    font: 700 14px/1.3 var(--head) !important;
  }
  .section-cu-de .clist .ci {
    width: 35px !important;
    height: 35px !important;
  }
  .section-cu-de .clist a, .section-cu-de .clist div {
    padding: 10px 10px !important;
  }
  .section-cu-de .btn.btn-o,
  .section-cu-de .btn.btn-ghost{
    font: 700 14px/1 var(--head) !important;
  }
}

@media only screen and (max-width: 400px) {
  span.wp-stars {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
  }
  .hero-grid .wp-google-based, .hero-grid .wp-google-powered {
    font-size: 12px !important;
  }
  .hero-grid .wp-google-right {
    display: flex !important;
    flex-direction: row;
    gap: 8px 2px;
    align-items: center;
    margin-top: 15px !important;
    flex-wrap: wrap;
  }
}
.single-training .section-cu-de.tint .month .cname h4 {
  color: #f58434 !important;
}
.section-cu-de .tagline {
  font: 700 14px/1.3 var(--head) !important;
}
.section-cu-de.hero h1 {
  font-size: clamp(28px,3.8vw,46px) !important;
}
.section-cu-de .ov-text h2 {
  font-size: clamp(26px,3.2vw,38px) !important;
}
.hero .wp-gr .wp-google-right {
  display: flex !important;
  align-items: center !important;
  margin-top: 15px !important;
  gap: 5px !important;
  width: 100% !important;
}

}
/* end @layer course */

/* Unlayered page styles (on the dispatcher page these sit in inline <style> tags:
   audience slider + split FAQ). Kept OUTSIDE the layer on purpose so the
   reset layer does not cancel their normal declarations. */
@media (max-width: 1024px) {
  .section-cu-de .aud.aud-slider.slick-initialized { display: block !important; grid-template-columns: none !important; columns: auto !important; position: relative; padding: 0 48px; }
  .section-cu-de .aud.aud-slider .slick-list { margin: 0 -10px; overflow: hidden; }
  .section-cu-de .aud.aud-slider .slick-track { display: flex !important; }
  .section-cu-de .aud.aud-slider .slick-slide { height: auto !important; padding: 0 10px; float: none; }
  .section-cu-de .aud.aud-slider .slick-list, .section-cu-de .aud.aud-slider .slick-dots { width: auto !important; grid-column: 1 / -1; }
  .section-cu-de .aud.aud-slider .slick-slide > .aud-c { width: 100% !important; max-width: none !important; flex: none !important; height: 100%; margin: 0; }
  .section-cu-de .aud.aud-slider .slick-slide > .aud-c img { width: 100%; height: auto; }
  .section-cu-de .aud.aud-slider .aud-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: #f47b20; color: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, .15); cursor: pointer; transition: opacity .2s; }
  .section-cu-de .aud.aud-slider .aud-prev { left: 0; }
  .section-cu-de .aud.aud-slider .aud-next { right: 0; }
  .section-cu-de .aud.aud-slider .aud-arrow.slick-disabled { opacity: .35; cursor: default; }
  .section-cu-de .aud.aud-slider .slick-dots { display: flex !important; justify-content: center; gap: 8px; list-style: none; margin: 20px 0 0; padding: 0; }
  .section-cu-de .aud.aud-slider .slick-dots li { margin: 0; }
  .section-cu-de .aud.aud-slider .slick-dots button { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%; background: #c9d3dd; font-size: 0; line-height: 0; cursor: pointer; }
  .section-cu-de .aud.aud-slider .slick-dots .slick-active button { background: #f47b20; }
}
@media (max-width: 480px) {
  .section-cu-de .aud.aud-slider.slick-initialized { padding: 0 20px; }
  .section-cu-de .aud.aud-slider .aud-arrow { width: 34px; height: 34px; }
  .aud-slider .slick-slide { margin: 10px 0px; }
}
.section-cu-de .acc.acc-split { columns: auto !important; column-count: auto !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: 20px; align-items: start; }
.section-cu-de .acc.acc-split .acc-col { min-width: 0; }
@media (max-width: 1100px) { .section-cu-de .acc.acc-split { grid-template-columns: 1fr; gap: 0; } }


/* ===== Promo block: light ad-style design, different from the dark contact box ===== */
@layer course {
.section-cu-de .promo2{display:grid !important;grid-template-columns:1.2fr 1fr !important;gap:24px !important;padding:24px !important;border-radius:26px !important;background:linear-gradient(135deg,#eaf6fe 0%,#fff4ea 100%) !important}
.section-cu-de .promo2 .p2-course{display:flex !important;flex-direction:column !important;background:#fff !important;border-radius:20px !important;overflow:hidden !important;box-shadow:0 18px 40px -22px rgba(16,37,66,.45) !important;margin:0 !important}
.section-cu-de .promo2 .p2-img{position:relative !important;display:block !important;height:210px !important;background-size:cover !important;background-position:center 30% !important}
.section-cu-de .promo2 .p2-badge{position:absolute !important;left:20px !important;top:20px !important;display:inline-flex !important;align-items:center !important;gap:7px !important;padding:8px 14px !important;border-radius:999px !important;background:var(--orange) !important;color:#fff !important;font:700 12px/1 var(--head) !important;letter-spacing:.08em !important;text-transform:uppercase !important;box-shadow:0 8px 18px -8px rgba(0,0,0,.5) !important}
.section-cu-de .promo2 .p2-badge svg{width:15px !important;height:15px !important}
.section-cu-de .promo2 .p2-body{display:flex !important;flex-direction:column !important;gap:16px !important;padding:28px 30px 30px !important}
.section-cu-de .promo2 .p2-body h2{margin:0 !important;color:var(--navy) !important;font:800 32px/1.18 var(--head) !important;text-align:left !important}
.section-cu-de .promo2 .p2-body h2 span{color:var(--orange) !important}
.section-cu-de .promo2 .p2-body p{margin:0 !important;color:#3c4a5c !important;font-size:17px !important;line-height:1.6 !important}
.section-cu-de .promo2 .p2-body p b{color:var(--navy) !important}
.section-cu-de .promo2 .p2-pills{display:flex !important;flex-wrap:wrap !important;gap:10px !important}
.section-cu-de .promo2 .p2-pills span{display:inline-flex !important;align-items:center !important;gap:7px !important;padding:9px 14px !important;border-radius:999px !important;background:#eaf6fe !important;color:var(--navy) !important;font:700 14px/1 var(--head) !important}
.section-cu-de .promo2 .p2-pills svg{width:17px !important;height:17px !important;color:var(--blue) !important}
.section-cu-de .promo2 .p2-btn{align-self:flex-start !important;width:auto !important;padding:15px 26px !important;display:inline-flex !important;align-items:center !important;gap:8px !important;margin-top:4px !important}
.section-cu-de .promo2 .p2-setup{position:relative !important;display:flex !important;flex-direction:column !important;gap:14px !important;margin:0 !important;padding:30px !important;border-radius:20px !important;overflow:hidden !important;background:linear-gradient(160deg,var(--navy-2) 0%,var(--navy) 100%) !important;color:#fff !important;box-shadow:0 18px 40px -22px rgba(16,37,66,.6) !important}
.section-cu-de .promo2 .p2-setup::after{content:"" !important;position:absolute !important;right:-60px !important;top:-60px !important;width:200px !important;height:200px !important;border-radius:50% !important;border:28px solid rgba(23,162,239,.14) !important;pointer-events:none !important}
.section-cu-de .promo2 .p2-ic{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:56px !important;height:56px !important;border-radius:16px !important;background:var(--orange) !important;color:#fff !important}
.section-cu-de .promo2 .p2-ic svg{width:28px !important;height:28px !important}
.section-cu-de .promo2 .p2-kick{font:700 13px/1 var(--head) !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:#9fd8fb !important}
.section-cu-de .promo2 .p2-setup h3{margin:0 !important;color:#fff !important;font:800 25px/1.25 var(--head) !important}
.section-cu-de .promo2 .p2-setup p{margin:0 !important;color:#c9d6e6 !important;font-size:16px !important;line-height:1.6 !important}
.section-cu-de .promo2 .p2-list{list-style:none !important;margin:4px 0 0 !important;padding:0 !important;display:grid !important;gap:12px !important}
.section-cu-de .promo2 .p2-list li{display:flex !important;flex-direction:column !important;gap:4px !important;margin:0 !important;padding:2px 0 2px 16px !important;border-left:3px solid var(--orange) !important}
.section-cu-de .promo2 .p2-list small{font:700 12px/1 var(--head) !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:#9fd8fb !important}
.section-cu-de .promo2 .p2-list b{color:#fff !important;font:700 16px/1.35 var(--head) !important}
.section-cu-de .promo2 .p2-btn-w{background:#fff !important;color:var(--navy) !important;margin-top:auto !important;box-shadow:0 10px 22px -12px rgba(0,0,0,.6) !important}
.section-cu-de .promo2 .p2-btn-w:hover{background:#eaf6fe !important;transform:translateY(-2px) !important}
.section-cu-de .promo2 .p2-btn-w svg{width:18px !important;height:18px !important;color:var(--orange) !important}
@media (max-width:900px){
  .section-cu-de .promo2{grid-template-columns:1fr !important;padding:14px !important;gap:16px !important}
  .section-cu-de .promo2 .p2-body{padding:22px 20px 24px !important}
  .section-cu-de .promo2 .p2-body h2{font-size:26px !important}
  .section-cu-de .promo2 .p2-setup{padding:24px 20px !important}
  .section-cu-de .promo2 .p2-img{height:170px !important}
}
}


/* ===== Navy version of the band (orange kept for the enrol/CTA sections) ===== */
@layer course {
.section-cu-de.band-orange.band-navy{background:
  radial-gradient(circle at 12% 18%,rgba(23,162,239,.20),transparent 30%),
  radial-gradient(circle at 88% 82%,rgba(23,162,239,.14),transparent 32%),
  linear-gradient(120deg,var(--navy) 0%,var(--navy-2) 100%) !important}
.section-cu-de.band-orange.band-navy::before{opacity:.10 !important}
.section-cu-de.band-orange.band-navy::after{border-color:rgba(23,162,239,.16) !important}
.section-cu-de.band-orange.band-navy .kicker{color:#9fd8fb !important}
.section-cu-de.band-orange.band-navy .kicker::before{background:var(--orange) !important}
.section-cu-de.band-orange.band-navy .role{box-shadow:0 22px 44px -26px rgba(0,0,0,.75) !important}
.section-cu-de.band-orange.band-navy .role .ic{background:var(--orange) !important}
}


/* ===== Hero points, booking steps, numbered criteria cards, disclaimer, dotted background ===== */
@layer course {
.section-cu-de .ct-hero-pts{list-style:none !important;margin:22px 0 0 !important;padding:0 !important;display:flex !important;flex-wrap:wrap !important;gap:10px !important}
.section-cu-de .ct-hero-pts li{display:inline-flex !important;align-items:center !important;gap:8px !important;margin:0 !important;padding:9px 14px !important;border-radius:999px !important;background:rgba(255,255,255,.12) !important;border:1px solid rgba(255,255,255,.22) !important;color:#fff !important;font:700 14.5px/1.2 var(--head) !important;backdrop-filter:blur(4px)}
.section-cu-de .ct-hero-pts svg{width:18px !important;height:18px !important;flex:none !important;color:#fff !important;background:var(--orange) !important;border-radius:50% !important;padding:3px !important}

.section-cu-de .bk-steps{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:20px !important;margin-top:26px !important;counter-reset:none}
.section-cu-de .bk{position:relative !important;background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;padding:26px 24px 24px !important;margin:0 !important;box-shadow:0 14px 30px -24px rgba(16,37,66,.5) !important}
.section-cu-de .bk-n{display:grid !important;place-items:center !important;width:46px !important;height:46px !important;border-radius:50% !important;background:var(--orange) !important;color:#fff !important;font:800 20px/1 var(--head) !important;margin-bottom:14px !important;box-shadow:0 8px 18px -8px rgba(245,132,52,.9) !important}
.section-cu-de .bk h3{margin:0 0 8px !important;color:var(--navy) !important;font:800 20px/1.3 var(--head) !important}
.section-cu-de .bk p{margin:0 !important;color:#3a4a5e !important;font-size:16.5px !important;line-height:1.6 !important}
.section-cu-de .bk:not(:last-child)::after{content:"" !important;position:absolute !important;top:48px !important;right:-20px !important;width:20px !important;height:2px !important;background:var(--orange) !important}
.section-cu-de .bk-cta{text-align:center !important;margin:26px 0 6px !important}
.section-cu-de .bk-cta .btn{width:auto !important;padding:15px 28px !important;display:inline-flex !important}

.section-cu-de .crit{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:20px !important;margin-top:24px !important}
.section-cu-de .crit-c{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--r) !important;padding:26px 24px !important;margin:0 !important;border-top:4px solid var(--blue) !important;box-shadow:0 14px 30px -24px rgba(16,37,66,.5) !important}
.section-cu-de .crit-c:nth-child(2){border-top-color:var(--orange) !important}
.section-cu-de .crit-c:nth-child(3){border-top-color:var(--navy) !important}
.section-cu-de .crit-c .ic{display:grid !important;place-items:center !important;width:52px !important;height:52px !important;border-radius:14px !important;background:var(--blue-soft) !important;color:var(--blue-d) !important;margin-bottom:12px !important}
.section-cu-de .crit-c h3{margin:0 0 12px !important;color:var(--navy) !important;font:800 21px/1.3 var(--head) !important}
.section-cu-de .crit-c ol{margin:0 !important;padding:0 !important;list-style:none !important;display:grid !important;gap:10px !important}
.section-cu-de .crit-c ol li{display:flex !important;gap:12px !important;align-items:center !important;margin:0 !important;color:var(--text) !important;font:600 16.5px/1.35 var(--body) !important}
.section-cu-de .crit-c ol li{counter-increment:crit-num !important}
.section-cu-de .crit-c ol li::before{content:counter(crit-num) !important;flex:none !important;display:grid !important;place-items:center !important;width:30px !important;height:30px !important;border-radius:8px !important;background:var(--navy) !important;color:#fff !important;font:800 14px/1 var(--head) !important}

.section-cu-de .ct-disc{max-width:860px !important;margin:28px auto 0 !important;text-align:center !important;color:var(--muted) !important;font-size:14.5px !important;line-height:1.55 !important}

.section-cu-de.dots{background-color:#fff !important;background-image:radial-gradient(rgba(23,162,239,.22) 1.6px,transparent 1.8px) !important;background-size:22px 22px !important;background-position:0 0 !important}
.section-cu-de.dots .promo2{background:linear-gradient(135deg,rgba(234,246,254,.92) 0%,rgba(255,244,234,.92) 100%) !important}

@media (max-width:900px){
  .section-cu-de .bk-steps,.section-cu-de .crit{grid-template-columns:1fr !important;gap:14px !important}
  .section-cu-de .bk:not(:last-child)::after{display:none !important}
  .section-cu-de .ct-hero-pts li{font-size:13.5px !important}
}
}


/* ===== Short answer box (featured-snippet style paragraph) ===== */
@layer course {
.section-cu-de .ct-answer{background:var(--blue-soft) !important;border-left:4px solid var(--blue) !important;border-radius:10px !important;padding:14px 16px !important}
}


/* ===== "At a glance" tiles ===== */
@layer course {
.section-cu-de .ct-glance{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:18px !important;margin:24px 0 0 !important}
.section-cu-de .ct-glance .gl{position:relative !important;display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;gap:4px !important;padding:26px 18px 22px !important;background:#fff !important;border:1px solid var(--line) !important;border-radius:18px !important;box-shadow:0 16px 32px -24px rgba(16,37,66,.55) !important;overflow:hidden !important;transition:transform .2s !important}
.section-cu-de .ct-glance .gl::before{content:"" !important;position:absolute !important;left:0 !important;right:0 !important;top:0 !important;height:5px !important;background:linear-gradient(90deg,var(--blue) 0%,var(--orange) 100%) !important}
.section-cu-de .ct-glance .gl:hover{transform:translateY(-4px) !important}
.section-cu-de .ct-glance .gl-ic{display:grid !important;place-items:center !important;width:58px !important;height:58px !important;border-radius:50% !important;background:var(--navy) !important;color:#fff !important;margin-bottom:10px !important;box-shadow:0 0 0 6px var(--blue-soft) !important}
.section-cu-de .ct-glance .gl-ic svg{width:27px !important;height:27px !important}
.section-cu-de .ct-glance small{font:700 12.5px/1 var(--head) !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--orange-d) !important}
.section-cu-de .ct-glance b{display:block !important;margin-top:6px !important;color:var(--navy) !important;font:800 27px/1.15 var(--head) !important}
.section-cu-de .ct-glance em{font-style:normal !important;color:var(--muted) !important;font-size:15.5px !important;line-height:1.4 !important}
@media (max-width:900px){.section-cu-de .ct-glance{grid-template-columns:1fr 1fr !important;gap:12px !important}.section-cu-de .ct-glance b{font-size:22px !important}.section-cu-de .ct-glance .gl{padding:22px 12px 18px !important}}
}


/* ===== Compact contact box ===== */
@layer course {
.section-cu-de.contact.compact .c-side{padding:28px 28px !important;gap:16px !important}
.section-cu-de.contact.compact .clist{gap:10px !important}
.section-cu-de.contact.compact .clist a,.section-cu-de.contact.compact .clist div{padding:9px 12px !important}
.section-cu-de.contact.compact .clist .ci{width:38px !important;height:38px !important}
.section-cu-de.contact.compact .c-form{padding-top:28px !important;padding-bottom:28px !important}
.section-cu-de.contact.compact .fld textarea{min-height:76px !important;height:76px !important}
.section-cu-de.contact.compact .row-form-cu{margin-bottom:0 !important}
.section-cu-de.contact.compact .reqnote{margin:4px 0 8px !important}
}


/* ===== Google reviews panel, comparison table, "More courses" cards ===== */
@layer course {
.section-cu-de .rev-panel{background:#fff !important;border-radius:22px !important;padding:22px 22px 18px !important;margin:0 !important;box-shadow:0 18px 40px -28px rgba(16,37,66,.45) !important}

.section-cu-de .hos-tbl{margin:24px 0 0 !important;background:#fff !important;border:1px solid var(--line) !important;border-radius:18px !important;overflow:hidden !important;box-shadow:0 18px 40px -28px rgba(16,37,66,.5) !important}
.section-cu-de .hos-tbl .ht-row{display:grid !important;grid-template-columns:200px 1fr 1fr !important;border-bottom:1px solid var(--line) !important}
.section-cu-de .hos-tbl .ht-row:last-child{border-bottom:0 !important}
.section-cu-de .hos-tbl .ht-row:nth-child(even):not(.ht-head){background:#f8fbfe !important}
.section-cu-de .hos-tbl .ht-row span{display:block !important;padding:15px 20px !important;color:var(--text) !important;font-size:16px !important;line-height:1.45 !important}
.section-cu-de .hos-tbl .ht-row span + span{border-left:1px solid var(--line) !important}
.section-cu-de .hos-tbl .ht-row span[role="rowheader"]{font:800 15px/1.3 var(--head) !important;color:var(--navy) !important}
.section-cu-de .hos-tbl .ht-row b{color:var(--navy) !important;font-weight:800 !important}
.section-cu-de .hos-tbl .ht-head span{display:flex !important;align-items:center !important;gap:8px !important;background:var(--navy) !important;color:#fff !important;font:800 16px/1.3 var(--head) !important;padding:17px 20px !important}
.section-cu-de .hos-tbl .ht-head span + span{border-left:1px solid rgba(255,255,255,.15) !important}
.section-cu-de .hos-tbl .ht-head svg{width:20px !important;height:20px !important;color:var(--orange) !important;flex:none !important}
.section-cu-de .ht-note{margin:14px 0 0 !important;text-align:center !important;color:var(--muted) !important;font-size:14.5px !important}

.section-cu-de .more3{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:22px !important;margin-top:26px !important}
.section-cu-de .m3{display:flex !important;flex-direction:column !important;margin:0 !important;background:#fff !important;border-radius:20px !important;overflow:hidden !important;box-shadow:0 18px 40px -24px rgba(16,37,66,.5) !important;transition:transform .2s !important}
.section-cu-de .m3:hover{transform:translateY(-4px) !important}
.section-cu-de .m3-img{position:relative !important;display:block !important;height:190px !important;background-size:cover !important;background-position:center !important}
.section-cu-de .m3-badge{position:absolute !important;left:16px !important;top:16px !important;padding:7px 13px !important;border-radius:999px !important;background:var(--orange) !important;color:#fff !important;font:700 12px/1 var(--head) !important;letter-spacing:.08em !important;text-transform:uppercase !important;box-shadow:0 8px 18px -8px rgba(0,0,0,.5) !important}
.section-cu-de .m3-body{display:flex !important;flex-direction:column !important;gap:12px !important;padding:24px 24px 26px !important;flex:1 !important}
.section-cu-de .m3-body h3{margin:0 !important;color:var(--navy) !important;font:800 21px/1.3 var(--head) !important}
.section-cu-de .m3-body p{margin:0 !important;color:#3c4a5c !important;font-size:16px !important;line-height:1.6 !important}
.section-cu-de .m3-btn{margin-top:auto !important;align-self:flex-start !important;width:auto !important;padding:13px 22px !important;display:inline-flex !important;align-items:center !important;gap:8px !important}
.section-cu-de .m3-navy{background:linear-gradient(160deg,var(--navy-2) 0%,var(--navy) 100%) !important}
.section-cu-de .m3-navy .m3-body h3{color:#fff !important}
.section-cu-de .m3-navy .m3-body p{color:#c9d6e6 !important}
.section-cu-de .m3-btn-w{background:#fff !important;color:var(--navy) !important}
.section-cu-de .m3-btn-w svg{width:18px !important;height:18px !important;color:var(--orange) !important}
@media (max-width:1000px){.section-cu-de .more3{grid-template-columns:1fr !important;gap:16px !important}}
@media (max-width:760px){
  .section-cu-de .hos-tbl .ht-row{grid-template-columns:1fr 1fr !important}
  .section-cu-de .hos-tbl .ht-row span[role="rowheader"],.section-cu-de .hos-tbl .ht-head span:first-child{grid-column:1 / -1 !important;background:var(--blue-soft) !important;padding:10px 14px !important}
  .section-cu-de .hos-tbl .ht-head span:first-child{display:none !important}
  .section-cu-de .hos-tbl .ht-row span{padding:12px 14px !important;font-size:15px !important}
  .section-cu-de .hos-tbl .ht-row span[role="rowheader"] + span{border-left:0 !important}
  .section-cu-de .rev-panel{padding:14px 10px 12px !important;border-radius:16px !important}
}
}

/* ===== Linked course titles in "More courses" cards ===== */
@layer course {
.section-cu-de .m3-body h3 a{color:inherit !important;text-decoration:none !important}
.section-cu-de .m3-body h3 a:hover{color:var(--orange) !important}
}


/* ===== Helpers used by the flexible template (replace the old inline styles) ===== */
@layer course {
/* Reviews panel followed by the class photos slider */
.section-cu-de .rev-panel:not(:last-child){margin-bottom:26px !important}

/* Promo / "more courses" sections: a little more breathing room */
.section-cu-de.promo-sec{padding-block:48px !important}
.section-cu-de.more-sec{padding-block:52px !important}

/* "How you'll learn" block with a numbers row in between */
.section-cu-de .prog + .stats-card,
.section-cu-de .stats-card + .prog{margin-top:18px !important}
.section-cu-de .stats-card.stats-card--text .stat b{font-size:23px !important}

/* Roles band: one card only -> single centred column */
.section-cu-de .roles.roles--single{grid-template-columns:1fr !important;max-width:820px !important;margin-inline:auto !important}

/* Info boxes under the roles cards */
.section-cu-de .roles + .info-strip{margin-top:22px !important;margin-bottom:0 !important}

/* Contact box kicker on the dark side */
.section-cu-de.contact .c-side .kicker{color:#9fd8fb !important}
}


/* ---------- Google reviews widget (Widget Google Reviews, slider) in the reviews section ----------
   Footer on ONE line, like the client demo:  4.9 ★★★★★  Based on 1950 reviews  Google
   Dots centred, round white arrows. Only inside #reviews (the hero rating badge is not changed). */
#reviews .wp-gr .wp-google-right{display:flex !important;flex-wrap:nowrap !important;align-items:center !important;justify-content:center !important;gap:8px !important;width:100% !important;max-width:100% !important;text-align:center !important;white-space:nowrap !important;overflow:hidden !important}
#reviews .wp-gr .wp-google-right > *{margin:0 !important;position:static !important;float:none !important;transform:none !important;flex:0 0 auto !important}
#reviews .wp-gr .wp-google-right > div:not([class]){display:inline-flex !important;align-items:center !important;gap:6px !important}
#reviews .wp-gr .wp-google-name{display:none !important}
#reviews .wp-gr .wp-google-rating{font:800 24px/1 'Plus Jakarta Sans',sans-serif !important;color:#102542 !important;margin:0 !important}
#reviews .wp-gr .wp-google-stars{display:inline-flex !important;align-items:center !important;line-height:1 !important}
#reviews .wp-gr .wp-google-stars .wp-star{padding:0 1px !important}
#reviews .wp-gr .wp-google-based{font:600 15px/1.2 'Source Sans 3',sans-serif !important;color:#5a6a7e !important}
/* "powered by Google" -> only "Google" (like the demo). */
#reviews .wp-gr .wp-google-powered{font-size:0 !important;line-height:1 !important}
#reviews .wp-gr .wp-google-powered > span{font:700 15px/1 'Source Sans 3',sans-serif !important}
#reviews .wp-gr .wp-google-footer{position:static !important;height:auto !important;padding:10px 12px !important;box-shadow:none !important}
/* Dots: small, centred. */
#reviews .wp-gr .rpi-dots-wrap{position:static !important;margin:14px auto 8px !important;padding:0 !important;display:flex !important;justify-content:center !important;width:100% !important;max-width:100% !important;overflow:hidden !important}
#reviews .wp-gr .rpi-dots{gap:8px !important;max-width:100% !important}
#reviews .wp-gr .rpi-dot{width:8px !important;height:8px !important;flex:0 0 8px !important}
#reviews .wp-gr .rpi-dot.active{background:#1a73e8 !important}
/* Arrows: round white buttons with a soft shadow. */
#reviews .wp-gr .grw-btns{width:40px !important;height:40px !important;min-width:40px !important;border-radius:50% !important;background:#fff !important;border:0 !important;box-shadow:0 4px 14px rgba(16,37,66,.16) !important;display:flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;z-index:2;transition:background .2s,box-shadow .2s}
#reviews .wp-gr .grw-btns:hover{background:#f3f7fb !important;box-shadow:0 6px 18px rgba(16,37,66,.22) !important}
/* Thin navy chevron (like the demo) instead of the plugin arrow. */
#reviews .wp-gr .grw-btns svg{display:none !important}
#reviews .wp-gr .grw-btns::before{content:"" !important;display:block !important;width:9px !important;height:9px !important;border-top:2.5px solid #102542 !important;border-right:2.5px solid #102542 !important;border-radius:1px !important}
#reviews .wp-gr .grw-prev::before{transform:rotate(-135deg) !important;margin-left:4px !important}
#reviews .wp-gr .grw-next::before{transform:rotate(45deg) !important;margin-right:4px !important}
#reviews .wp-gr .grw-review-inner{border-radius:14px !important}
/* Slider width: the review list must take the full row (else on phones it shrinks to 0 and only the arrows show). */
#reviews .wp-gr,#reviews .wp-gr .grw-row,#reviews .wp-gr .grw-content{width:100% !important;max-width:100% !important;min-width:0 !important}
#reviews .wp-gr .grw-row{display:flex !important;flex-wrap:wrap !important}
#reviews .wp-gr .grw-content{flex:1 1 100% !important}
#reviews .wp-gr .grw-content-inner{display:flex !important;flex-wrap:wrap !important;align-items:center !important;width:100% !important;min-width:0 !important}
#reviews .wp-gr .grw-reviews{flex:1 1 0% !important;min-width:0 !important;width:auto !important;max-width:100% !important}
#reviews .wp-gr .grw-btns{flex:0 0 auto !important;position:relative !important;left:auto !important;right:auto !important}
#reviews .wp-gr .rpi-dots-wrap{flex:0 0 100% !important}
#reviews .wp-gr .grw-row-xs .grw-review{flex:0 0 100% !important;width:100% !important;max-width:100% !important}
@media (max-width:767px){
  #reviews .wp-gr .grw-content-inner{padding:0 !important}
  #reviews .wp-gr .grw-btns{width:36px !important;height:36px !important;min-width:36px !important}
  #reviews .wp-gr .grw-btns::before{width:8px !important;height:8px !important}
  #reviews .wp-gr .wp-google-right{gap:6px !important}
  #reviews .wp-gr .wp-google-rating{font-size:19px !important}
  #reviews .wp-gr .wp-google-stars .wp-star svg{width:14px !important;height:14px !important}
  #reviews .wp-gr .wp-google-based,#reviews .wp-gr .wp-google-powered > span{font-size:13px !important}
}
@media (max-width:360px){
  #reviews .wp-gr .wp-google-right{gap:4px !important}
  #reviews .wp-gr .wp-google-rating{font-size:17px !important}
  #reviews .wp-gr .wp-google-stars .wp-star svg{width:12px !important;height:12px !important}
  #reviews .wp-gr .wp-google-based,#reviews .wp-gr .wp-google-powered > span{font-size:12px !important}
}
@media (max-width:340px){
  #reviews .wp-gr .wp-google-right{gap:3px !important}
  #reviews .wp-gr .wp-google-rating{font-size:15px !important}
  #reviews .wp-gr .wp-google-stars .wp-star{padding:0 !important}
  #reviews .wp-gr .wp-google-stars .wp-star svg{width:11px !important;height:11px !important}
  #reviews .wp-gr .wp-google-based,#reviews .wp-gr .wp-google-powered > span{font-size:11px !important}
}

/* Hero "Get in Touch" form: dropdowns look like the other fields (same text, arrow on the right). */
@layer course {
  html body .section-cu-de .cb-card.cb-card.cb-card select{-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;width:100% !important;font:inherit !important;font-size:15px !important;font-weight:400 !important;line-height:1.3 !important;color:#fff !important;background-color:rgba(255,255,255,.10) !important;border:1px solid rgba(255,255,255,.22) !important;border-radius:8px !important;padding:13px 38px 13px 14px !important;cursor:pointer !important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23a9b9cc' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;background-repeat:no-repeat !important;background-position:right 14px center !important;background-size:12px 8px !important;text-overflow:ellipsis !important;white-space:nowrap !important}
  html body .section-cu-de .cb-card.cb-card.cb-card select:has(option:first-child:checked){color:#a9b9cc !important}
  html body .section-cu-de .cb-card.cb-card.cb-card select::-ms-expand{display:none !important}
  html body .section-cu-de .cb-card.cb-card.cb-card select option{color:#1f2b3b !important;background:#fff !important}
  html body .section-cu-de .cb-card.cb-card.cb-card select:focus{outline:none !important;border-color:var(--orange) !important;box-shadow:0 0 0 3px rgba(245,132,52,.25) !important}
}

/* Hero Google rating: before the reviews plugin's script runs it prints its whole review list, which
   makes the hero tall and pushes the form down for a moment. Only the rating line is kept. */
@layer course {
  .section-cu-de.hero .wp-gr{max-height:70px !important;overflow:hidden !important}
  .section-cu-de.hero .wp-gr .wp-google-content-inner,
  .section-cu-de.hero .wp-gr .wp-google-reviews,
  .section-cu-de.hero .wp-gr .wp-google-review,
  .section-cu-de.hero .wp-gr .grw-reviews,
  .section-cu-de.hero .wp-gr .grw-review,
  .section-cu-de.hero .wp-gr .wp-google-url,
  .section-cu-de.hero .wp-gr .wp-more{display:none !important}
  .section-cu-de .hero-grid > *{min-width:0 !important}
}
