/* Pankh Venture v16: premium dark. Black + gold, logo pink-to-orange accent. Single simple font: Inter. */
:root{--bg:#0b0a0d;--bg2:#100e14;--card:#15121a;--card2:#1b1721;--text:#ece6dc;--muted:#a9a196;--white:#f7f0e1;
--line:#d4af5f33;--line2:#d4af5f66;--gold:#d4af5f;--gold2:#f0d28a;--gold3:#a8822f;
--pink:#e0457b;--orange:#f28a2e;--violet:#b08cff;--gr:#25d366;
--mag:#e0457b;--ind:#b08cff;--amb:#f28a2e;--ink:#f7f0e1;--soft:#100e14;--paper:#0b0a0d;--night:#0b0a0d;
--a:var(--mag);--r:6px;--hdr:84px;--grad:linear-gradient(135deg,#e0457b,#f28a2e);--goldg:linear-gradient(135deg,#f0d28a,#d4af5f 55%,#a8822f);
--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--serif:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
--sh:0 1px 0 #ffffff08 inset,0 18px 40px #0009}
body.inst{--a:var(--mag)}body.cyber{--a:var(--ind)}body.work{--a:var(--amb)}
*,*:before,*:after{box-sizing:border-box}*{margin:0}
html{background:var(--bg);overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.75;font-size:17px;animation:pgin .5s ease both;-webkit-font-smoothing:antialiased}
@keyframes pgin{from{opacity:0}to{opacity:1}}
h1,h2,h3,h4{font-family:var(--serif);color:var(--white);line-height:1.15;font-weight:700;letter-spacing:-.015em;text-wrap:balance}
a{color:inherit}img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
::selection{background:var(--gold);color:#0b0a0d}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:#0b0a0d;padding:10px 16px;z-index:300;font-weight:700}.skip:focus{left:8px}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:60;background:#0b0a0df2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:box-shadow .3s}
header.sc{box-shadow:0 14px 40px #000c}
#pr{position:absolute;left:0;bottom:-1px;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--grad);z-index:2}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--hdr)}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-family:var(--serif);font-weight:700;font-size:1.25rem;letter-spacing:-.01em;color:var(--white);white-space:nowrap}
.brand img{height:54px;width:auto}
nav>ul{display:flex;gap:4px;list-style:none;padding:0;align-items:center}
nav a,.ddb{position:relative;display:block;text-decoration:none;font-size:.78rem;padding:12px 11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#d9d0bf;background:none;border:0;font-family:inherit;cursor:pointer;white-space:nowrap;transition:color .2s}
nav>ul>li>a:after,.ddb:before{content:"";position:absolute;left:11px;right:11px;bottom:5px;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .3s}
nav a:hover,.ddb:hover,.dd.open>.ddb{color:var(--gold2)}nav>ul>li>a:hover:after,.ddb:hover:before,.dd.open>.ddb:before{transform:scaleX(1)}
nav a.on,.ddb.on{color:var(--gold2)}nav>ul>li>a.on:after,.ddb.on:before{transform:scaleX(1)}
nav a.cta{margin-left:10px;padding:13px 22px;color:#1a0f14;background:var(--grad);border-radius:4px}
nav a.cta:after{display:none}nav a.cta:hover{color:#1a0f14;filter:brightness(1.1)}
.dd{position:relative}
.ddb:after{content:"";display:inline-block;width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:9px;transition:transform .2s}
.dd.open>.ddb:after{transform:rotate(225deg) translateY(-2px)}
.ddm{position:absolute;right:0;top:calc(100% + 10px);min-width:240px;background:#111016;border:1px solid var(--line2);border-radius:var(--r);padding:8px;list-style:none;box-shadow:0 30px 70px #000d;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s}
.ddm a{padding:11px 14px}.ddm a:after{display:none}.ddm a:hover{background:#d4af5f14}
.dd.open .ddm,.dd:hover .ddm,.dd:focus-within .ddm{opacity:1;visibility:visible;transform:none}
#tg{display:none;width:48px;height:48px;border-radius:4px;border:1px solid var(--line2);background:#0b0a0d;cursor:pointer;position:relative;z-index:80}
#tg i,#tg:before,#tg:after{content:"";position:absolute;left:13px;right:13px;height:1.5px;background:var(--gold);transition:.3s}
#tg:before{top:16px}#tg i{top:23px}#tg:after{top:30px}
#tg[aria-expanded=true]:before{top:23px;transform:rotate(45deg)}#tg[aria-expanded=true] i{opacity:0}#tg[aria-expanded=true]:after{top:23px;transform:rotate(-45deg)}
#ov{position:fixed;inset:0;background:#000b;opacity:0;visibility:hidden;transition:.3s;z-index:58}#ov.on{opacity:1;visibility:visible}

/* ---------- buttons ---------- */
.btn{max-width:100%;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:15px 34px;border-radius:4px;border:0;cursor:pointer;text-decoration:none;font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#1a0f14;background:linear-gradient(135deg,var(--a),color-mix(in srgb,var(--a) 55%,var(--orange)));box-shadow:0 12px 30px color-mix(in srgb,var(--a) 28%,transparent);transition:transform .25s,box-shadow .25s,filter .25s}
.btn:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 18px 38px color-mix(in srgb,var(--a) 40%,transparent)}
.btn:active{transform:none}
.btn.go,.btn[style*="--gold"]{background:var(--goldg);color:#1a1206!important;box-shadow:0 12px 30px #d4af5f33}
.btn.line,.btn.line.light,.btn[style*="--ink"]{background:transparent;color:var(--gold2)!important;box-shadow:inset 0 0 0 1px var(--gold)}
.btn.line:hover,.btn.line.light:hover,.btn[style*="--ink"]:hover{background:var(--gold);color:#0b0a0d!important;box-shadow:inset 0 0 0 1px var(--gold),0 14px 34px #d4af5f40}
.btn.wa{background:linear-gradient(135deg,#34e07a,#1fb157);color:#06210f;box-shadow:0 12px 30px #25d36633}
.btn.busy{pointer-events:none;opacity:.75}.btn.busy:before{content:"";width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:spin .7s linear infinite}
.row{display:flex;gap:16px;flex-wrap:wrap}

/* ---------- sections ---------- */
section{padding:112px 0;position:relative}
.soft{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dark{background:radial-gradient(700px 360px at 92% -20%,#e0457b30,transparent),radial-gradient(600px 340px at 0% 120%,#f28a2e26,transparent),#0e0b10;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);overflow:hidden}
.dark .wrap{position:relative}
h2{font-size:clamp(1.9rem,3.4vw,2.7rem);margin-bottom:20px;max-width:24ch;font-weight:700}
h2:after{content:"";display:block;width:84px;height:2px;margin-top:24px;background:var(--goldg)}
h3{font-size:1.25rem;font-weight:700}
.lead{color:var(--muted);max-width:60ch;margin-bottom:56px;font-size:1.1rem}
.eyebrow,.tag{font-weight:700;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.eyebrow{display:inline-block;margin-bottom:14px}
.pill,.sub small{display:inline-flex;align-items:center;gap:10px;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);border:1px solid var(--line2);border-radius:999px;padding:9px 20px;margin-bottom:30px;background:#d4af5f10}
.pill:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gr);box-shadow:0 0 0 0 #25d36699;animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 9px #25d36600}100%{box-shadow:0 0 0 0 #25d36600}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes drift{to{transform:translate(40px,30px) scale(1.1)}}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.28;z-index:0;animation:drift 18s ease-in-out infinite alternate;pointer-events:none}
.o1{width:380px;height:380px;background:var(--pink);left:-110px;top:-120px}.o2{width:320px;height:320px;background:var(--orange);right:8%;bottom:-160px;animation-delay:-5s;opacity:.2}.o3{width:260px;height:260px;background:var(--gold);right:-80px;top:-70px;animation-delay:-9s;opacity:.18}

/* ---------- home hero ---------- */
.sky{position:relative;isolation:isolate;overflow:hidden;padding:128px 0 136px;background:radial-gradient(900px 540px at 90% 0%,#e0457b2e,transparent 62%),radial-gradient(760px 520px at -4% 100%,#f28a2e22,transparent 62%),repeating-linear-gradient(90deg,#d4af5f0a 0 1px,transparent 1px 160px),var(--bg)}
.sky:before{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);z-index:1}
.sky:after{content:"";position:absolute;right:-30px;top:50%;width:720px;height:520px;margin-top:-260px;background:url(img/logo.webp) center/contain no-repeat;opacity:.2;z-index:0;pointer-events:none}
.sky>.stars{display:none}
.sky .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:72px;align-items:center}
.sky h1{font-size:clamp(2.5rem,5.4vw,4.5rem);margin:4px 0 22px;line-height:1.08;letter-spacing:-.03em;font-weight:800}
.sky p{color:#c9c0b2;max-width:52ch;font-size:1.12rem;margin-bottom:36px}
.rotline{font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.55rem)!important;color:var(--white)!important;margin-bottom:20px!important;font-weight:600}
.rotline b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;min-width:3.4ch;font-weight:700;transition:opacity .35s,transform .35s}
.rotline b.out{opacity:0;transform:translateY(8px)}
.skyart{position:relative;counter-reset:w;display:grid;border-top:1px solid var(--line2)}
.wcard{position:relative;z-index:1;counter-increment:w;display:flex;flex-direction:column;gap:2px;padding:30px 56px 30px 84px;text-decoration:none;color:var(--text);background:#0b0a0dcc;border-bottom:1px solid var(--line2);transition:background .3s,padding .3s}
.wcard:before{content:"0" counter(w);position:absolute;left:8px;top:50%;margin-top:-22px;font-family:var(--serif);font-size:1.9rem;line-height:1;font-weight:800;color:var(--gold);opacity:.7;transition:.3s}
.wcard:after{content:"\2192";position:absolute;right:20px;top:50%;margin-top:-14px;font-size:1.4rem;line-height:1;color:var(--c);opacity:0;transform:translateX(-10px);transition:.3s}
.wcard:hover{background:#d4af5f12;padding-left:96px}.wcard:hover:before{color:var(--c);opacity:1}.wcard:hover:after{opacity:1;transform:none}
.wcard b{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--white);line-height:1.1;transition:color .3s}.wcard:hover b{color:var(--c)}
.wcard span{color:var(--muted);font-size:.98rem}

/* ---------- inner page heroes ---------- */
.sub,.abh{position:relative;isolation:isolate;overflow:hidden;padding:112px 0 100px;border:0;border-bottom:1px solid var(--line2);background:radial-gradient(760px 400px at 92% -10%,color-mix(in srgb,var(--a) 26%,transparent),transparent 66%),radial-gradient(560px 300px at 0% 110%,#d4af5f1c,transparent 66%),repeating-linear-gradient(90deg,#d4af5f08 0 1px,transparent 1px 160px),var(--bg)}
.sub:after,.abh:after{content:"";position:absolute;right:-120px;top:50%;width:460px;height:460px;margin-top:-230px;border-radius:50%;z-index:0;pointer-events:none;border:1px solid #d4af5f40;box-shadow:inset 0 0 0 34px #d4af5f08,inset 0 0 0 35px #d4af5f2e}
.sub .wrap,.abh .wrap{position:relative;z-index:2}
.sub h1,.abh h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:22ch;margin-bottom:22px;line-height:1.1;font-weight:800;letter-spacing:-.025em}
.sub p,.abh p{max-width:60ch;color:#c9c0b2;font-size:1.14rem;margin-bottom:34px}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:30px}

/* ---------- ticker / stats ---------- */
.ticker{position:relative;z-index:2;overflow:hidden;white-space:nowrap;padding:17px 0;font-size:.74rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);background:#070608;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.ticker div{display:inline-block;animation:tick 50s linear infinite}.ticker:hover div{animation-play-state:paused}
.ticker span{margin:0 28px}.ticker span:after{content:"\25C6";margin-left:56px;color:var(--pink);font-size:.7em}
@keyframes tick{to{transform:translateX(-50%)}}
.statband{padding:0;background:var(--bg2);border-bottom:1px solid var(--line)}
.statband .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding-top:72px;padding-bottom:72px;text-align:center}
.statband .wrap>div{padding:8px 20px;border-right:1px solid var(--line)}.statband .wrap>div:last-child{border:0}
.statband b{display:block;font-family:var(--serif);font-size:clamp(2.4rem,4.4vw,3.4rem);line-height:1;font-weight:800;background:var(--goldg);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:lining-nums}
.statband span{display:block;margin-top:14px;color:var(--muted);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}

/* ---------- cards ---------- */
.card,.hcard,.flow>div,.why>div,.course,.steps li,.tile,.vals>div,.mv>div,.ses,.int,.job,.tm article,.pl article,address>div,details,.gal figure,form,#inf,.empty,.rvw,.facts>div{--c:var(--a);position:relative;background:linear-gradient(160deg,var(--card),#100e14);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);transition:transform .35s,box-shadow .35s,border-color .35s}
.card,.hcard,.course,.steps li,.flow>div,.why>div,.tile,.vals>div,.ses,.int,.job,.tm article,.pl article{overflow:hidden}
.hcard:hover,.card:hover,.course:hover,.steps li:hover,.flow>div:hover,.why>div:hover,.tile:hover,.vals>div:hover,.ses:hover,.int:hover,.tm article:hover,.pl article:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 1px 0 #ffffff0a inset,0 28px 60px #000c,0 0 40px #d4af5f14}
.card:before,.hcard:before,.tile:before,.vals>div:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--c),var(--gold2),transparent)}
.hgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.hcard{display:flex;flex-direction:column;padding:48px 40px 40px;text-decoration:none}
.hcard .ic{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;margin-bottom:30px;color:var(--c);border:1px solid color-mix(in srgb,var(--c) 60%,transparent);background:color-mix(in srgb,var(--c) 10%,transparent);transition:transform .4s}
.hcard:hover .ic{transform:rotate(-10deg) scale(1.08)}.hcard .ic svg{width:30px;height:30px}
.hcard h3{font-size:1.4rem;margin-bottom:14px;line-height:1.12}.hcard p{color:var(--muted);margin-bottom:28px;flex:1}
.hcard em{font-style:normal;font-weight:700;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c)}.hcard em:after{content:" \2192";display:inline-block;transition:transform .25s}.hcard:hover em:after{transform:translateX(6px)}
.grid{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.card{padding:44px 36px 36px}.card h3{margin-bottom:12px}.card p{color:var(--muted);font-size:1rem}
.card ul,.two ul{padding-left:20px;color:var(--muted);margin:16px 0 26px}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;counter-reset:f}
.flow>div{padding:44px 36px;counter-increment:f;overflow:visible}
.flow>div:before{content:"0" counter(f);display:block;font-family:var(--serif);font-size:2.8rem;font-weight:800;line-height:1;margin-bottom:16px;background:var(--goldg);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:lining-nums}
.flow>div:not(:last-child):after{content:"\2192";position:absolute;right:-30px;top:50%;width:40px;height:40px;margin-top:-20px;border-radius:50%;display:grid;place-items:center;z-index:3;font-size:1rem;color:var(--gold2);background:#0b0a0d;border:1px solid var(--gold)}
.flow h3{font-size:1.4rem;margin-bottom:8px}.flow p{color:var(--muted)}
.why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.why>div{padding:40px 30px;--c:var(--gold)}.why>div:nth-child(2){--c:var(--pink)}.why>div:nth-child(3){--c:var(--orange)}.why>div:nth-child(4){--c:var(--violet)}
.why svg{width:36px;height:36px;color:var(--c);margin-bottom:20px}.why h3{margin-bottom:10px;font-size:1.2rem}.why p{font-size:.98rem;margin:0;color:var(--muted)}
.course{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) 240px;gap:36px;align-items:center;padding:40px 44px;margin-bottom:28px}
.course:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--a),var(--gold))}
.course h3{font-size:1.5rem;margin:8px 0}.course>div:first-child span{color:var(--muted);font-size:1rem}
.course .facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;text-align:center}
.course .facts>div{padding:16px 6px;border-radius:4px;background:#0b0a0d;border:1px solid var(--line);box-shadow:none;overflow:visible}
.course .facts b{display:block;font-family:var(--serif);font-size:1.25rem;font-weight:700;color:var(--white);line-height:1.1}.course .facts span{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.price{white-space:nowrap;font-family:var(--serif);font-size:2.2rem;font-weight:700;text-align:right;margin-bottom:16px;line-height:1;background:var(--goldg);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:lining-nums}
.price s{font-family:var(--sans);font-size:.34em;color:var(--muted);-webkit-text-fill-color:var(--muted);font-weight:500;margin-right:8px}
.gst{display:block;text-align:right;color:var(--muted);font-size:.8rem;margin:-8px 0 12px}
.steps{list-style:none;padding:0;counter-reset:s;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.steps li{counter-increment:s;padding:40px 32px}
.steps li:before{content:counter(s);display:grid;place-items:center;width:50px;height:50px;border-radius:50%;margin-bottom:22px;font-family:var(--serif);font-size:1.15rem;font-weight:700;color:var(--gold2);border:1px solid var(--gold);background:#d4af5f12}
.steps h4{font-size:1.15rem;margin-bottom:8px}.steps p{color:var(--muted);font-size:.98rem}
.score{display:grid;gap:10px;align-content:center;text-align:center;padding:56px 36px;border-radius:var(--r);background:radial-gradient(circle at 50% 0%,#f28a2e40,transparent 70%),#15101a;border:1px solid var(--gold);box-shadow:0 0 60px #d4af5f1f}
.score b{font-family:var(--serif);font-size:clamp(3.2rem,8vw,4.6rem);line-height:1;font-weight:800;background:var(--goldg);-webkit-background-clip:text;background-clip:text;color:transparent}.score span{color:var(--muted);letter-spacing:.06em}
.pills{display:flex;flex-wrap:wrap;gap:12px}
.pills span{padding:11px 24px;border-radius:999px;border:1px solid var(--line2);background:#d4af5f0d;font-size:.9rem;font-weight:500;letter-spacing:.03em;transition:.25s}
.pills span:hover{color:#0b0a0d;background:var(--gold);border-color:var(--gold);transform:translateY(-3px)}
details{max-width:860px;margin-bottom:16px;padding:0}
details[open]{border-color:var(--gold)}
summary{cursor:pointer;font-family:var(--serif);font-weight:600;font-size:1.08rem;padding:22px 70px 22px 28px;position:relative;list-style:none;color:var(--white)}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:24px;top:50%;margin-top:-17px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--sans);font-size:1.3rem;line-height:1;color:var(--gold2);border:1px solid var(--line2);transition:.3s}
details[open] summary:after{transform:rotate(45deg);background:var(--gold);color:#0b0a0d;border-color:var(--gold)}
details p{color:var(--muted);padding:0 30px 28px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:start}
address{font-style:normal;display:grid;gap:18px;margin-top:36px}
address>div{padding:20px 26px;border-left:2px solid var(--gold)}
address b{display:block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
address a{text-decoration:none;font-weight:600;overflow-wrap:anywhere}address>div{min-width:0;overflow-wrap:anywhere}address a:hover{color:var(--gold2)}

/* ---------- forms ---------- */
form{display:grid;gap:22px;padding:44px;box-shadow:0 40px 90px #000c}
form:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--grad)}
label{font-weight:700;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
input,select,textarea{width:100%;min-height:54px;margin-top:8px;padding:14px 16px;border:1px solid var(--line2);border-radius:4px;font:inherit;font-size:16px;color:var(--text);background:#0b0a0d;transition:border-color .2s,box-shadow .2s}
input::placeholder,textarea::placeholder{color:#6f685f}
select option,select optgroup{background:#15121a;color:var(--text)}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--gold2);box-shadow:0 0 0 3px #d4af5f2e}
input[type=file]{padding:12px}input[type=file]::file-selector-button{margin-right:14px;padding:10px 18px;border:1px solid var(--gold);background:#d4af5f14;color:var(--gold2);border-radius:4px;font:inherit;font-weight:600;font-size:.85rem;cursor:pointer}input:user-invalid,select:user-invalid{border-color:var(--pink)}
.hp{position:absolute!important;left:-9999px!important}
#msg{font-weight:700;min-height:1.4em}#msg.ok{color:#5be79a}#msg.bad{color:#ff8fb0}
.okm,.erm{font-weight:600;border-radius:4px;padding:14px 16px}.okm{background:#25d36618;color:#5be79a;border:1px solid #25d36644}.erm{background:#e0457b18;color:#ff9db9;border:1px solid #e0457b55}
#inf{padding:40px;--c:var(--orange);gap:20px;display:grid}

/* ---------- floating actions ---------- */
.fab{position:fixed;right:24px;bottom:24px;z-index:50;color:#06210f;text-decoration:none;font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;padding:15px 24px 15px 52px;border-radius:999px;background:linear-gradient(135deg,#34e07a,#1fb157);box-shadow:0 14px 34px #25d36640}
.fab:before{content:"";position:absolute;left:20px;top:50%;width:20px;height:20px;margin-top:-10px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2306210f'%3E%3Cpath d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z'/%3E%3C/svg%3E")}
.fab:hover{filter:brightness(1.08)}
#up{position:fixed;right:28px;bottom:92px;z-index:50;width:48px;height:48px;border-radius:50%;border:1px solid var(--gold);background:#0b0a0d;color:var(--gold2);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:.3s;font-size:1.2rem}
#up.on{opacity:1;visibility:visible;transform:none}#up:hover{background:var(--gold);color:#0b0a0d}
.mbar{display:none}

/* ---------- footer ---------- */
footer{position:relative;overflow:hidden;padding:88px 0 40px;font-size:.96rem;color:#b9b0a3;background:#070608;border-top:1px solid var(--line2)}
footer .g{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:56px;margin-bottom:48px}
footer b{display:block;margin-bottom:18px;color:var(--white);font-family:var(--serif);font-size:1.1rem;font-weight:700}
footer a{overflow-wrap:anywhere;display:block;text-decoration:none;padding:5px 0;transition:.2s}footer a:hover{color:var(--gold2);transform:translateX(4px)}
.social{display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px;padding:32px 0;margin-bottom:8px;border-top:1px solid var(--line)}
.social b{margin:0 10px 0 0;font-size:1rem}
footer .social a{display:inline-flex;align-items:center;gap:10px;padding:11px 20px;border:1px solid var(--line2);border-radius:4px;color:var(--text);font-weight:500;transition:.25s}
footer .social a:hover{color:#0b0a0d;background:var(--gold);border-color:var(--gold);transform:translateY(-3px)}
.social svg{width:20px;height:20px}
.legal{border-top:1px solid var(--line);padding-top:28px;font-size:.88rem;color:#8c847a}

/* ---------- dynamic data pages ---------- */
.badge{display:inline-block;align-self:flex-start;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 14px;border-radius:999px;color:#5be79a;background:#25d36612;border:1px solid #25d36655}
.badge.hold{color:var(--gold2);background:#d4af5f14;border-color:var(--line2)}.badge.closed{color:var(--muted);background:#ffffff0a;border-color:var(--line)}
.int .badge,.int>.badge{color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);border-color:color-mix(in srgb,var(--c) 50%,transparent)}
.job{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:34px 38px;margin-bottom:22px;border-left:3px solid var(--a)}
.job:hover{transform:translateX(6px)}.job h3{font-size:1.35rem;margin:12px 0}
.meta{color:var(--muted);font-size:.92rem;display:flex;gap:10px 12px;flex-wrap:wrap}
.meta span{padding:4px 14px;border-radius:999px;background:#ffffff08;border:1px solid var(--line)}
.notice{padding:18px 24px;border-radius:4px;margin-bottom:28px;font-weight:600;border:1px solid}
.notice.ok{color:#5be79a;background:#25d36612;border-color:#25d36655}.notice.bad{color:#ff9db9;background:#e0457b14;border-color:#e0457b55}.notice.warn{color:var(--gold2);background:#d4af5f12;border-color:var(--line2)}
.desc{white-space:pre-line;max-width:70ch;color:var(--text)}
.gal{display:grid;gap:26px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.gal a{display:block;text-decoration:none;cursor:zoom-in}.gal figure{overflow:hidden;padding:0}
.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .7s}
.gal figure:hover{transform:translateY(-5px);border-color:var(--gold)}.gal figure:hover img{transform:scale(1.06)}
.gal figcaption{padding:14px 18px;font-size:.94rem;color:var(--muted)}
.pl{display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.pl article{text-align:center;padding-bottom:32px}.pl img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#0b0a0d;transition:transform .7s}.pl article:hover img{transform:scale(1.05)}
.pl h3{font-size:1.25rem;margin:22px 14px 2px}.pl .co{font-weight:700;color:var(--gold)}.pl p{color:var(--muted);font-size:.94rem;margin:2px 14px}
.pl .pk{display:inline-block;margin-top:14px;padding:7px 22px;border-radius:999px;font-family:var(--serif);font-size:1rem;font-weight:700;color:#1a1206;background:var(--goldg)}
.apply{max-width:700px}
.empty{padding:64px;text-align:center;color:var(--muted);border-style:dashed;border-color:var(--line2);box-shadow:none;background:#d4af5f08}
.tm{display:grid;gap:32px;grid-template-columns:repeat(2,minmax(0,1fr))}
.tm article{display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;align-items:start;padding:32px;min-width:0}.tm article>div{min-width:0}
.tm img,.tm .ini{width:150px;height:184px;object-fit:cover;border-radius:4px;background:#0b0a0d;border:1px solid var(--line2)}
.tm .ini{display:grid;place-items:center;font-family:var(--serif);font-size:2.6rem;font-weight:700;color:#1a0f14;background:var(--grad);border:0}
.tm h3{font-size:1.3rem;overflow-wrap:anywhere;line-height:1.15;margin-bottom:8px}.tm .ti{font-weight:700;color:var(--gold);font-size:.95rem}.tm .co{color:var(--muted);font-size:.92rem}.tm .bio{margin-top:12px;color:var(--text);font-size:.96rem;overflow-wrap:break-word}.tm a{display:inline-block;margin-top:10px;font-weight:700;color:var(--gold2)}
.cta-band{text-align:center}.cta-band h2,.cta-band .lead{margin-left:auto;margin-right:auto}.cta-band h2:after{margin-left:auto;margin-right:auto}.cta-band .row{justify-content:center}
/* reviews */
.rvw{margin:0;padding:40px 34px 30px;display:flex;flex-direction:column;gap:18px;min-width:0}
.rvw:before{content:"\201C";position:absolute;right:26px;top:-6px;font-family:Georgia,serif;font-size:5rem;line-height:1;color:#d4af5f55}
.rvw .stars{color:var(--gold);letter-spacing:4px;font-size:1.05rem}
.rvw blockquote{margin:0;flex:1;line-height:1.75;color:var(--text)}.rvw figcaption{display:flex;align-items:center;gap:14px}.rvw figcaption b{display:block;color:var(--white)}.rvw small{color:var(--muted)}
.rvw img,.rvw .ini{width:50px;height:50px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--gold)}.rvw .ini{display:grid;place-items:center;font-weight:700;color:#1a0f14;background:var(--grad);border:0}
.rvgrid{display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr))}
.rvmarq{overflow:hidden;margin:40px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rvtrack{display:flex;gap:28px;width:max-content;padding:10px 0;animation:tick 80s linear infinite}.rvtrack .rvw{width:360px;flex:none}.rvmarq:hover .rvtrack{animation-play-state:paused}
/* sessions + internships */
.sesgrid,.intgrid{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr))}
.ses img,.ses .sph{width:100%;aspect-ratio:16/10;object-fit:cover;background:linear-gradient(135deg,#3a1226,#4a2a0a)}
.ses>div:last-child{padding:30px}.ses h3{margin-bottom:8px;font-size:1.3rem}.ses p{color:var(--muted);font-size:.98rem}
.int{--c:var(--orange);padding:38px 34px;display:flex;flex-direction:column;gap:16px;border-top:2px solid var(--c)}
.int.f-sales{--c:var(--pink)}.int.f-cybersecurity{--c:var(--violet)}.int.f-other{--c:var(--gold)}
.int p{color:var(--muted);flex:1}.int .btn{align-self:flex-start;--a:var(--c)}
/* about */
.story{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:80px;align-items:center}.story p{color:var(--muted);margin-top:16px;max-width:60ch}.story .lead{color:var(--text);font-size:1.25rem;margin-bottom:0}
.story .facts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.story .facts>div{padding:36px 28px;--c:var(--gold);border-top:2px solid var(--c)}
.story .facts>div:nth-child(2){--c:var(--pink)}.story .facts>div:nth-child(3){--c:var(--orange)}.story .facts>div:nth-child(4){--c:var(--violet)}
.story .facts b{display:block;font-family:var(--serif);font-size:2.2rem;font-weight:800;line-height:1.05;color:var(--c)}.story .facts span{color:var(--muted);font-size:.9rem}
.split2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.tile{padding:48px 40px}.tile p{color:var(--muted);margin:10px 0 24px}
.mv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin-top:36px}.mv>div{padding:44px 38px;--c:var(--pink);border-top:2px solid var(--c)}.mv>div:nth-child(2){--c:var(--gold)}.mv h3{color:var(--c);margin-bottom:14px;font-size:1.45rem}.mv p{margin-bottom:12px;color:var(--muted)}
.vals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:36px}.vals>div{padding:38px 24px 30px}.vals h3{margin-bottom:10px;color:var(--c);font-size:1.2rem}.vals p{font-size:.94rem;color:var(--muted)}
.vals>div:nth-child(2){--c:var(--violet)}.vals>div:nth-child(3){--c:var(--orange)}.vals>div:nth-child(4){--c:var(--gold)}.vals>div:nth-child(5){--c:var(--pink)}

/* ---------- lightbox ---------- */
#lb{position:fixed;inset:0;background:#050406f5;z-index:90;display:none;place-items:center;padding:20px;touch-action:pan-y}
#lb.on{display:grid;animation:pgin .25s}#lb img{max-width:100%;max-height:82vh;border:1px solid var(--gold);box-shadow:0 20px 80px #000}
#lb p{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#fff;padding:0 70px}
#lb button{position:absolute;width:50px;height:50px;border-radius:50%;border:1px solid var(--gold);background:#0b0a0d;color:var(--gold2);font-size:1.6rem;cursor:pointer;line-height:1}#lb button:hover{background:var(--gold);color:#0b0a0d}
#lb .x{top:16px;right:16px}#lb .pv{left:12px;top:50%}#lb .nx{right:12px;top:50%}

/* ---------- reveal ---------- */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}

/* ---------- tablet: drawer ---------- */
@media(max-width:1100px){
 :root{--hdr:72px}
 header{background:#0b0a0d;-webkit-backdrop-filter:none;backdrop-filter:none}
 #tg{display:block}
 nav{position:fixed;top:0;right:0;bottom:0;width:min(88vw,380px);z-index:70;padding:96px 24px 32px;overflow-y:auto;background:#0b0a0d;border-left:1px solid var(--line2);box-shadow:-30px 0 80px #000;transform:translateX(105%);visibility:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),visibility 0s .4s}
 nav.open{transform:none;visibility:visible;transition:transform .4s cubic-bezier(.2,.8,.2,1),visibility 0s}
 nav>ul{flex-direction:column;align-items:stretch;gap:0}
 nav a,.ddb{font-size:.84rem;padding:15px 6px;text-align:left;width:100%;border-bottom:1px solid var(--line)}
 nav>ul>li>a:after,.ddb:before{display:none}
 nav a.cta{margin:0;text-align:center;border:0;width:100%}
 nav>ul>li:last-child{position:sticky;bottom:-32px;margin-top:10px;padding:14px 0 32px;background:#0b0a0d;border-top:1px solid var(--line);z-index:2}
 .dd .ddb{display:none}
 .ddm{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0;background:none;min-width:0}
 .ddm:before{content:"More";display:block;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);padding:18px 6px 2px;font-weight:700}
 .ddm a{padding:14px 6px}
 .hgrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.why{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.course{grid-template-columns:minmax(0,1fr)}.price,.gst{text-align:left}
 .vals{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* ---------- mobile ---------- */
@media(max-width:900px){
 .sky .wrap,.story,.split2,.mv,.split,.two,.flow,footer .g,.tm{grid-template-columns:minmax(0,1fr)}
 .sky{padding:40px 0 64px}.sky .wrap{gap:36px}.sky:after{width:480px;height:340px;margin-top:-170px;right:-140px;opacity:.12}
 .split,.story{gap:48px}.vals{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .statband .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:34px}.statband .wrap>div:nth-child(2){border-right:0}
}
@media(max-width:820px){
 body{padding-bottom:72px;font-size:16.5px}
 section{padding:60px 0}.wrap{padding:0 22px}
 .hgrid,.why{grid-template-columns:minmax(0,1fr)}
 .hcard{padding:38px 28px 32px}.card{padding:36px 28px 30px}.flow>div,.steps li{padding:34px 28px}
 .flow{gap:46px}.flow>div:not(:last-child):after{content:"\2193";right:auto;left:50%;top:auto;bottom:-33px;margin:0 0 0 -20px}
 .course{padding:32px 26px;gap:28px}.course .facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .row .btn{flex:1 1 auto}
 .sub,.abh{padding:40px 0 48px}
 .pill,.sub small{font-size:.64rem;letter-spacing:.1em;padding:8px 14px;margin-bottom:18px}.sub:after,.abh:after{width:300px;height:300px;margin-top:-150px;right:-160px}
 .job{grid-template-columns:minmax(0,1fr);padding:28px 24px}.job:hover{transform:none}
 form{padding:32px 22px}
 .tm article{grid-template-columns:110px minmax(0,1fr);gap:18px;padding:22px}.tm img,.tm .ini{width:110px;height:136px}
 .wcard{padding:26px 24px 26px 66px}.wcard:before{font-size:1.6rem;left:4px}.wcard:hover{padding-left:66px}.wcard b{font-size:1.3rem}.wcard:after{display:none}
 .fab,#up{display:none!important}
 .mbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);position:fixed;left:0;right:0;bottom:0;z-index:55;background:#0b0a0df7;border-top:1px solid var(--line2);padding-bottom:env(safe-area-inset-bottom)}
 .mbar a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:11px 4px 10px;text-decoration:none;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold2)}
 .mbar svg{width:22px;height:22px}.mbar a:nth-child(2){color:#5be79a}.mbar a:nth-child(3){color:var(--pink)}.mbar a:active{background:#d4af5f14}
 #lb .pv,#lb .nx{top:auto;bottom:70px}
 h2{max-width:none}.lead{margin-bottom:42px}
}
@media(max-width:560px){.rvtrack .rvw{width:290px}.vals{grid-template-columns:minmax(0,1fr)}.brand{font-size:1.2rem;letter-spacing:.02em}.brand img{height:42px}.sky h1{font-size:clamp(2.3rem,10.5vw,3rem)}}
@media(max-width:480px){.tm article{grid-template-columns:minmax(0,1fr)}.tm img,.tm .ini{width:100%;height:260px}}
@media(hover:none){.hcard:hover,.card:hover,.course:hover,.steps li:hover,.flow>div:hover,.why>div:hover,.pl article:hover,.tm article:hover,.int:hover,.ses:hover,.tile:hover,.vals>div:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.rv{opacity:1;transform:none}}
@media print{header,.fab,.mbar,#up,.ticker,.orb{display:none}body{padding:0;background:#fff;color:#000}}

@supports not (color:color-mix(in srgb,red,blue)){
 .btn{background:var(--a);box-shadow:0 12px 30px #0006}
 .btn:hover{box-shadow:0 18px 38px #0008}
 .sub,.abh{background:radial-gradient(760px 400px at 92% -10%,#e0457b30,transparent 66%),radial-gradient(560px 300px at 0% 110%,#d4af5f1c,transparent 66%),var(--bg)}
 .hcard .ic{border:1px solid var(--c);background:#ffffff0d}
 .int .badge,.int>.badge{background:#ffffff0d;border-color:var(--c)}
}
