:root{--midnight:#0b1024;--panel:#141b36;--violet:#b292ff;--mint:#69f5d0;--lime:#d3fd83;--text:#f2f3ff;--muted:#b8c0d9;--line:#303b5b}
body{background:var(--midnight);color:var(--text)}
header{background:#0b1024ed;border-color:var(--line)}
.brandmark span{color:var(--mint)}
.brandmark{color:var(--text)}
.language{border-color:#465270;background:#141b36}
.language button{color:#d9def1}.language button[aria-pressed=true]{background:var(--violet);color:#10152a}
.small-cta{border-color:var(--mint);color:var(--mint)}
nav a:hover,.text-link:hover{color:var(--mint)}
.hero{position:relative;background:radial-gradient(ellipse at 85% 20%,#673fc12d,transparent 60%),radial-gradient(ellipse at 10% 80%,#1e8d7b13,transparent 55%)}
.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#8195cc08 1px,transparent 1px),linear-gradient(90deg,#8195cc08 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,transparent,#000)}
.hero-copy,.learning-board{position:relative}
.eyebrow{color:var(--violet)}
.eyebrow>span:first-child:empty{background:var(--mint);box-shadow:0 0 12px #69f5d066}
h1 em{color:var(--mint);background:linear-gradient(105deg,#b9a2ff 0%,#84dfea 55%,#69f5d0 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-copy>p,.section-heading>p,.about>div>p,.steps p,.faq-list p,.enquiry-copy>p{color:var(--muted)}
.dark{background:var(--violet);color:#10152a;box-shadow:0 5px 25px #9270ee1c}
.dark:hover{background:#c8b0ff;box-shadow:0 6px 28px #9270ee38}
.text-link{color:#e0e6f9}
.hero-note{color:#bbc7da}.check{border-color:#4d9c92;color:var(--mint)}
.learning-board{background:linear-gradient(150deg,#28204f,#131d36 62%,#133b3d);border:1px solid #70659b;border-radius:17px;box-shadow:12px 13px 0 #191c38,0 0 65px #875dff1a}
.board-top,.board-bottom{color:#cad0ec}
.board-logo{color:var(--mint)}
.learning-board h2{color:#f8f3ff}
.board-grid a{background:#c6afff;color:#111a32;border:1px solid #dacbff;box-shadow:inset 0 1px 0 #ffffff77}
.board-grid a:nth-child(2){background:#74ebd0;border-color:#b7ffed}
.board-grid a:nth-child(3){background:#8cceff;border-color:#bae2ff}
.board-grid a:nth-child(4){background:#d3fd83;border-color:#e5ffbb}
.board-grid a:hover{box-shadow:0 5px 25px #a2a5ff25}
.ribbon{border-color:var(--line);background:#10172e;color:#bac6e1}
.ribbon>span:first-child{color:var(--mint)}
.courses{background:radial-gradient(ellipse at 50% 100%,#8a56ff0c,transparent 65%)}
.course-card{background:linear-gradient(150deg,#1b2040,#121a30);border-color:#34415f;border-top:2px solid var(--violet)}
.course-card:nth-child(2){border-top-color:var(--mint)}
.course-card:nth-child(3){border-top-color:#8cceff}
.course-card:nth-child(4){border-top-color:var(--lime)}
.course-card:hover{border-color:#b292ff;box-shadow:0 8px 35px #00000030}
.card-top{color:#a6b3d0}
.course-icon{background:#382b59;color:#d0b8ff;border:1px solid #625084}
.course-card:nth-child(2) .course-icon{background:#133d3c;color:var(--mint);border-color:#32645d}
.course-card:nth-child(3) .course-icon{background:#17324e;color:#8cceff;border-color:#365b7c}
.course-card:nth-child(4) .course-icon{background:#303c23;color:var(--lime);border-color:#546346}
.tag{color:#b7bed9}.course-card p{color:#bcc5dc}
.course-button{border-color:var(--line);color:var(--mint)}
.funding{background:linear-gradient(120deg,#34204f,#20204a 55%,#143b40);border:1px solid #5d4a86;position:relative;overflow:hidden}
.funding:before{content:'';position:absolute;width:280px;height:280px;right:-170px;top:-190px;border:1px solid #69f5d047;border-radius:50%;box-shadow:0 0 0 32px #69f5d009,0 0 0 64px #b292ff09;pointer-events:none}
.funding .eyebrow{color:#d2baff}.funding-stamp{border-color:#84729d}.funding-stamp>span:first-child{color:#e6d9ff}.funding-stamp>span:nth-child(2){color:#d2cce3}.stamp-arrow{color:var(--mint)}
.funding-copy p{color:#d0cde4}.funding-copy small{color:#bfb8d3}.light{background:var(--mint);color:#10262c}.light:hover{background:#a0ffe5}
.steps>div{border-color:var(--line)}.steps>div>span{color:var(--mint)}
.faq{border-color:var(--line);background:#0e142a}.faq-list details{border-color:var(--line)}.faq-list summary:after{color:var(--violet)}
.enquiry{background:radial-gradient(ellipse at 5% 20%,#6d3dae35,transparent 70%),#141a33;border-top:1px solid #394260;border-bottom:1px solid #394260}
.contact-note{border-color:#414966}.contact-note>span{color:var(--mint)}.contact-note p{color:#c1c8de}
form{background:#0e152d;border-color:#3b4568;box-shadow:0 20px 60px #050b192e}
input,select,textarea{background:#1b2441;border-color:#465374;color:#f2f3ff;color-scheme:dark}
input::placeholder,textarea::placeholder{color:#a6b1cd}
input:focus,select:focus,textarea:focus{outline-color:var(--mint)}
.form-note{color:#b1bad0}#message-panel{border-color:var(--line)}#copy-status{color:var(--mint)}
footer{background:#090e20}footer p,footer>span{color:#a6b1cb}
dialog{background:#161c36;color:var(--text);border-color:#80709f;box-shadow:0 20px 80px #00000080}
dialog::backdrop{background:#070b1dc9;backdrop-filter:blur(5px)}
dialog p,dialog li{color:#c4cbe1}#close-dialog{color:#e4d8ff}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--mint)}
.skip{background:var(--violet);color:#10152a}
::selection{background:#b292ff;color:#10152a}
@media(max-width:720px){.learning-board{box-shadow:7px 8px 0 #191c38,0 0 35px #875dff1a}.hero:before{background-size:36px 36px}}
