:root{--navy:#031724;--navy2:#072b3d;--green:#35672f;--leaf:#91b957;--orange:#ff7a00;--cream:#f4efe2;--white:#fffdf7;--ink:#10202b}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--navy);color:var(--white);font-family:Arial,Helvetica,sans-serif}
a{color:inherit}
a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.skipLink{position:fixed;z-index:100;left:16px;top:12px;padding:12px 16px;background:var(--orange);color:var(--navy);font-size:12px;font-weight:900;text-decoration:none;transform:translateY(-160%);transition:transform .2s ease}
.skipLink:focus{transform:translateY(0)}
::selection{background:var(--orange);color:var(--navy)}

.topbar{height:112px;padding:0 clamp(22px,5vw,76px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;background:rgba(3,23,36,.96);border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:20}
.logoWrap{width:clamp(250px,26vw,405px);position:relative;display:block;text-decoration:none;isolation:isolate;transition:transform .25s ease}
.logoWrap:hover{transform:translateY(-3px) scale(1.01)}
.logoAura{position:absolute;inset:4px 7%;z-index:-1;border-radius:40%;background:linear-gradient(90deg,rgba(255,122,0,.7),rgba(145,185,87,.62));filter:blur(18px);opacity:.45;transition:opacity .25s ease,filter .25s ease}
.logoWrap:hover .logoAura{opacity:.75;filter:blur(21px)}
.logoFrame{position:relative;display:block;overflow:hidden;padding:10px 18px 9px;background:linear-gradient(135deg,#fffdf7 0%,#eee6d5 100%);clip-path:polygon(0 0,96% 0,100% 50%,96% 100%,0 100%,2.2% 50%);filter:drop-shadow(0 13px 22px rgba(0,0,0,.28))}
.logoFrame:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--orange),var(--leaf));height:3px}
.logoFrame:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--green),var(--orange),var(--green))}
.logoFrame img{position:relative;z-index:1;display:block;width:100%;height:auto}
.logoShine{position:absolute;z-index:2;top:-35%;bottom:-35%;width:44px;left:-20%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.68),transparent);animation:logoSweep 5.5s ease-in-out infinite}
.logoSignals{position:absolute;z-index:4;right:-3px;top:-8px;display:flex;gap:5px}
.logoSignals i{width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 10px var(--orange)}
.logoSignals i:nth-child(2){background:var(--leaf);box-shadow:0 0 10px var(--leaf)}
.logoSignals i:nth-child(3){background:#fff;box-shadow:0 0 10px #fff}
.topbar nav{display:flex;gap:30px}
.topbar nav a{text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:rgba(255,255,255,.62);position:relative}
.topbar nav a:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-7px;background:var(--orange);transition:right .2s ease}
.topbar nav a:hover:after{right:0}
.headerCta{justify-self:end;text-decoration:none;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;padding:13px 16px;border:1px solid rgba(255,255,255,.25)}
.headerCta span{color:var(--orange);margin-left:10px}

.hero{min-height:calc(100svh - 112px);position:relative;overflow:hidden;display:flex;align-items:center;padding:clamp(70px,8vw,120px) clamp(24px,8vw,132px);background:url('tobetsa-background.webp') center top/cover no-repeat}
.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,23,36,.99) 0%,rgba(3,23,36,.93) 36%,rgba(3,23,36,.54) 66%,rgba(3,23,36,.2) 100%),linear-gradient(0deg,rgba(3,23,36,.55),transparent 55%)}
.heroShade:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 34%,rgba(255,122,0,.14),transparent 20%),radial-gradient(circle at 78% 68%,rgba(145,185,87,.16),transparent 24%)}
.heroInner{position:relative;z-index:3;max-width:940px;animation:rise .8s ease-out both}
.status{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(255,255,255,.16);background:rgba(3,23,36,.58);backdrop-filter:blur(8px);font-size:9px;text-transform:uppercase;letter-spacing:.14em}
.status b{color:var(--leaf)}
.status i{font-style:normal;color:rgba(255,255,255,.5);padding-left:9px;border-left:1px solid rgba(255,255,255,.16)}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 5px rgba(145,185,87,.12),0 0 15px var(--leaf);animation:pulse 2s ease-in-out infinite}
.overline{text-transform:uppercase;letter-spacing:.2em;font-size:9px;color:var(--leaf);font-weight:800;margin:28px 0 14px}
.hero h1{font-size:clamp(55px,7vw,112px);line-height:.89;letter-spacing:-.065em;margin:0;max-width:1050px;text-wrap:balance}
.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--orange)}
.hero h1 strong{font-weight:800;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.92)}
.heroLead{font-size:clamp(16px,1.45vw,21px);line-height:1.7;max-width:720px;color:rgba(255,255,255,.72);margin:31px 0 0}
.heroActions{display:flex;align-items:center;gap:24px;margin-top:34px}
.buttonPrimary{min-width:250px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;background:var(--orange);color:var(--ink);padding:17px 20px;font-size:12px;font-weight:900;box-shadow:0 16px 40px rgba(255,122,0,.18);transition:transform .2s ease,box-shadow .2s ease}
.buttonPrimary:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(255,122,0,.28)}
.buttonPrimary b{font-size:20px}
.buttonGhost{text-decoration:none;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.72)}
.buttonGhost span{color:var(--leaf);margin-left:8px}
.proofRow{display:flex;margin-top:44px;border-top:1px solid rgba(255,255,255,.13);max-width:760px}
.proofRow>div{display:flex;align-items:center;gap:12px;padding:18px 30px 0 0;margin-right:30px;border-right:1px solid rgba(255,255,255,.12)}
.proofRow>div:last-child{border-right:0}
.proofRow>div>span{font-size:10px;color:var(--orange);font-weight:900}
.proofRow p{margin:0;display:grid;gap:3px}
.proofRow b{font-size:11px}
.proofRow small{font-size:8px;color:rgba(255,255,255,.48);text-transform:uppercase;letter-spacing:.1em}
.verticalLabel{position:absolute;z-index:4;left:22px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font-size:7px;letter-spacing:.3em;color:rgba(255,255,255,.34)}
.heroMark{position:absolute;z-index:3;right:5vw;bottom:50px;width:130px;height:130px;border-radius:50%;border:1px solid rgba(255,255,255,.18);display:grid;place-content:center;text-align:center;background:rgba(3,23,36,.45);backdrop-filter:blur(8px);animation:float 5s ease-in-out infinite}
.heroMark:before{content:"";position:absolute;inset:8px;border:1px dashed rgba(255,122,0,.55);border-radius:50%;animation:spin 18s linear infinite}
.heroMark span{font-family:Georgia,serif;color:var(--orange);font-size:43px;line-height:1}
.heroMark i{font-style:normal;font-size:6px;letter-spacing:.14em;text-transform:uppercase;color:var(--leaf);margin-top:5px}
.signalGrid{position:absolute;z-index:2;right:27%;top:13%;display:grid;grid-template-columns:repeat(3,6px);gap:10px}
.signalGrid i{width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 13px rgba(255,122,0,.7)}
.signalGrid i:nth-child(2n){background:var(--leaf);box-shadow:0 0 13px rgba(145,185,87,.7)}

.marquee{overflow:hidden;background:var(--orange);color:var(--navy);padding:13px 0}
.marquee div{width:max-content;display:flex;align-items:center;gap:25px;animation:marquee 28s linear infinite;white-space:nowrap;font-size:10px;font-weight:900;letter-spacing:.16em}
.marquee div:after{content:"LEARN. ✦ INNOVATE. ✦ COLLABORATE. ✦ CREATE IMPACT. ✦ EMPOWER. ✦ SUSTAIN. ✦ TRANSFORM. ✦"}
.marquee i{font-style:normal;color:var(--green)}

.manifesto{background:var(--cream);color:var(--ink);display:grid;grid-template-columns:.6fr 2.4fr;gap:50px;padding:clamp(85px,10vw,150px) clamp(24px,8vw,132px)}
.sectionTag{display:flex;align-items:flex-start;gap:12px;text-transform:uppercase;letter-spacing:.15em;font-size:8px}
.sectionTag span{color:var(--orange);font-weight:900}
.sectionTag p{margin:0;padding-left:12px;border-left:1px solid rgba(16,32,43,.25)}
.sectionTag.light p{border-color:rgba(255,255,255,.22)}
.manifestoLead{font-size:clamp(35px,4.6vw,72px);line-height:1.06;letter-spacing:-.045em;margin:0;max-width:1100px}
.manifestoLead em{font-family:Georgia,serif;color:var(--green);font-weight:400}
.manifestoDetail{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:55px;padding-top:27px;border-top:1px solid rgba(16,32,43,.18)}
.manifestoDetail p{margin:0;max-width:520px;font-size:14px;line-height:1.75;color:#4d5c63}
.manifestoDetail strong{color:var(--orange)}

.pathwaySection{padding:clamp(90px,10vw,150px) clamp(24px,6vw,100px);background:linear-gradient(135deg,#031724,#073125);position:relative;overflow:hidden}
.pathwaySection:before{content:"04";position:absolute;right:-20px;top:-115px;font-size:430px;font-weight:900;color:rgba(255,255,255,.025);letter-spacing:-.1em}
.sectionIntro{display:grid;grid-template-columns:.6fr 1.4fr 1fr;gap:45px;align-items:end;position:relative;z-index:1}
.sectionIntro h2{font-size:clamp(48px,5.5vw,86px);line-height:.92;letter-spacing:-.055em;margin:0}
.sectionIntro h2 em{font-family:Georgia,serif;color:var(--orange);font-weight:400}
.sectionIntro>p{margin:0;color:rgba(255,255,255,.62);font-size:14px;line-height:1.7;max-width:430px}
.pathwayGrid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14);position:relative;z-index:1}
.pathwayCard{min-height:350px;padding:28px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.025);transition:transform .28s ease,background .28s ease}
.pathwayCard:hover{transform:translateY(-8px);background:rgba(255,255,255,.075)}
.cardTop{display:flex;justify-content:space-between;align-items:center}
.cardTop span{font-size:9px;color:var(--orange);font-weight:900}
.cardTop i{font-style:normal;width:42px;height:42px;border:1px solid rgba(145,185,87,.5);border-radius:50%;display:grid;place-items:center;color:var(--leaf);font-size:18px}
.pathwayCard h3{font-size:24px;line-height:1.05;margin:65px 0 18px;letter-spacing:-.03em}
.pathwayCard>p{font-size:12px;line-height:1.75;color:rgba(255,255,255,.56);margin:0}
.pathwayCard>small{margin-top:auto;padding-top:28px;color:var(--leaf);font-size:8px;font-weight:900;letter-spacing:.17em}
.pathwayCard>small b{color:var(--orange);float:right}

.programme{display:grid;grid-template-columns:1.05fr .95fr;min-height:680px;background:var(--cream);color:var(--ink)}
.programmeImage{min-height:620px;margin:0;padding:clamp(28px,4vw,58px);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(15,92,151,.24),transparent 32%),radial-gradient(circle at 82% 70%,rgba(255,122,0,.18),transparent 34%),#021724}
.programmeImage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,black,transparent)}
.programmeCanvas{position:relative;z-index:1;width:100%;padding:7px;background:linear-gradient(135deg,var(--orange),rgba(255,255,255,.18) 34%,rgba(255,255,255,.12) 68%,var(--leaf));box-shadow:0 30px 65px rgba(0,0,0,.42)}
.programmeCanvas:after{content:"";position:absolute;inset:7px;pointer-events:none;box-shadow:inset 0 0 38px rgba(3,23,36,.24)}
.programmeCanvas img{display:block;width:100%;height:auto;object-fit:contain;background:var(--navy)}
.programmeImage figcaption{position:absolute;z-index:2;left:clamp(38px,5vw,74px);bottom:clamp(34px,4vw,64px);display:flex;align-items:center;gap:12px;background:rgba(3,23,36,.9);padding:9px 13px;border-left:3px solid var(--orange);box-shadow:0 10px 24px rgba(0,0,0,.3)}
.programmeImage figcaption span{font-size:8px;font-weight:900;letter-spacing:.15em;color:var(--orange)}
.programmeImage figcaption small{padding-left:12px;border-left:1px solid rgba(255,255,255,.18);font-size:7px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.7)}
.programmeCopy{padding:clamp(70px,8vw,125px) clamp(35px,7vw,105px);display:flex;flex-direction:column;justify-content:center}
.programmeCopy h2{font-size:clamp(43px,4.8vw,76px);line-height:.95;letter-spacing:-.05em;margin:27px 0}
.programmeCopy>p{font-size:15px;line-height:1.75;color:#526069;max-width:600px}
.programmeCopy ul{list-style:none;padding:0;margin:28px 0 32px;border-top:1px solid rgba(16,32,43,.16)}
.programmeCopy li{padding:14px 0;border-bottom:1px solid rgba(16,32,43,.16);font-size:12px}
.programmeCopy li span{color:var(--orange);font-weight:900;margin-right:15px}
.programmeCopy>a{align-self:flex-start;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:900;border-bottom:2px solid var(--orange);padding-bottom:8px}
.programmeCopy>a span{color:var(--orange);margin-left:15px}

.connect{padding:clamp(100px,12vw,180px) 24px;text-align:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(53,103,47,.42),transparent 31%),var(--navy)}
.connect:before,.connect:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.07);border-radius:50%;width:700px;height:700px;left:50%;top:50%;transform:translate(-50%,-50%)}
.connect:after{width:930px;height:930px}
.connect>*{position:relative;z-index:2}
.connect .overline{margin:0 0 25px}
.connect h2{font-size:clamp(55px,7.5vw,120px);line-height:.87;letter-spacing:-.065em;margin:0}
.connect h2 em{font-family:Georgia,serif;color:var(--orange);font-weight:400}
.connectLead{max-width:650px;margin:35px auto;color:rgba(255,255,255,.65);line-height:1.7;font-size:15px}
.contactActions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:43px}
.contactActions a{min-width:320px;display:grid;grid-template-columns:1fr auto;text-align:left;text-decoration:none;padding:18px 20px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);backdrop-filter:blur(8px);transition:background .2s ease,transform .2s ease}
.contactActions a:hover{background:rgba(255,255,255,.1);transform:translateY(-3px)}
.contactActions small{grid-column:1;text-transform:uppercase;letter-spacing:.15em;color:var(--leaf);font-size:7px}
.contactActions strong{grid-column:1;font-size:12px;margin-top:5px}
.contactActions span{grid-column:2;grid-row:1/3;color:var(--orange);align-self:center;font-size:19px}
.connectOrb{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);width:380px;height:380px;border-radius:50%;background:rgba(255,122,0,.035);filter:blur(1px)}
.connectOrb span{display:none}

footer{min-height:150px;padding:35px clamp(24px,6vw,95px);display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid rgba(255,255,255,.1);background:#02121d}
.footerLogo{width:min(300px,32vw);display:grid;gap:7px}
.footerLogo img{display:block;width:100%;background:var(--cream);padding:7px 11px;border-left:3px solid var(--orange);border-right:3px solid var(--leaf)}
.footerLogo span{text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.36);font-size:6px;text-align:center}
footer div{text-align:center;color:rgba(255,255,255,.42);font-size:8px;text-transform:uppercase;letter-spacing:.11em;line-height:1.7}
footer div p{margin:0}
footer>a{text-decoration:none;text-transform:uppercase;letter-spacing:.14em;color:var(--leaf);font-size:8px;font-weight:900}

@keyframes pulse{0%,100%{opacity:1}
50%{opacity:.35}
}
@keyframes float{0%,100%{transform:translateY(0)}
50%{transform:translateY(-8px)}
}
@keyframes spin{to{transform:rotate(360deg)}
}
@keyframes rise{from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes marquee{to{transform:translateX(-50%)}
}
@keyframes logoSweep{0%,62%{left:-20%}
82%,100%{left:125%}
}

@media(max-width:1050px){.topbar nav{display:none}
.topbar{grid-template-columns:1fr auto}
.headerCta{grid-column:2}
.heroMark,.verticalLabel{display:none}
.hero{padding-left:6vw}
.sectionIntro{grid-template-columns:1fr 1.4fr}
.sectionIntro>p{grid-column:2}
.pathwayGrid{grid-template-columns:1fr 1fr}
.programme{grid-template-columns:1fr}
.programmeImage{min-height:520px}
}

@media(max-width:700px){.topbar{height:94px;padding:0 18px;gap:12px}
.logoWrap{width:min(70vw,300px)}
.logoFrame{padding:7px 11px 6px}
.logoSignals{display:none}
.headerCta{font-size:0;padding:11px}
.headerCta span{font-size:16px;margin:0}
.hero{min-height:calc(100svh - 94px);padding:58px 20px;background-position:60% top}
.heroShade{background:linear-gradient(180deg,rgba(3,23,36,.86),rgba(3,23,36,.95))}
.status{flex-wrap:wrap}
.hero h1{font-size:clamp(50px,15vw,72px)}
.heroLead{font-size:15px}
.heroActions{align-items:flex-start;flex-direction:column}
.buttonPrimary{width:100%}
.proofRow{display:grid;grid-template-columns:1fr}
.proofRow>div{border-right:0;margin:0;padding-top:13px}
.signalGrid{right:24px}
.manifesto{grid-template-columns:1fr;padding:78px 22px;gap:35px}
.manifestoLead{font-size:clamp(38px,11vw,56px)}
.manifestoDetail{grid-template-columns:1fr;gap:18px;margin-top:35px}
.pathwaySection{padding:80px 20px}
.sectionIntro{grid-template-columns:1fr;gap:28px}
.sectionIntro>p{grid-column:1}
.sectionIntro h2{font-size:52px}
.pathwayGrid{grid-template-columns:1fr;margin-top:43px}
.pathwayCard{min-height:290px}
.pathwayCard h3{margin-top:45px}
.programmeImage{min-height:390px;padding:22px 16px 58px}
.programmeImage figcaption{left:16px;bottom:20px}
.programmeCopy{padding:70px 22px}
.programmeCopy h2{font-size:48px}
.connect{padding:100px 20px}
.connect h2{font-size:clamp(53px,15vw,74px)}
.contactActions a{min-width:0;width:100%}
footer{flex-direction:column;text-align:center}
.footerLogo{width:270px;max-width:90vw}
}

@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}
}
