
:root{
 --ink:#10223c;--muted:#66758c;--line:#e5edf6;--bg:#ffffff;--soft:#f7f9fd;
 --blue:#2267f2;--cyan:#16c3d6;--purple:#7a5cf5;--pink:#f66bb5;--green:#12b886;
 --orange:#ff9f43;--yellow:#ffc857;--navy:#0c2148;--teal:#1aa6a6;
 --radius:26px;--shadow:0 18px 55px rgba(34,103,242,.11);--shadow2:0 24px 70px rgba(15,36,80,.12);--max:1180px;
}

/* === Production accessibility and form states === */
.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:11px 14px;border-radius:10px;background:#082657;color:#fff;font-weight:800;transform:translateY(-180%);transition:transform .18s}
.skip-link:focus{transform:translateY(0);outline:3px solid #75d9ff;outline-offset:3px}
.form-status{margin-top:16px;padding:14px 15px;border-radius:14px;font-size:14px;font-weight:700;line-height:1.45}.form-status.success{background:#e9f8f3;color:#087c59}.form-status.error{background:#fff1f1;color:#a52828;border:1px solid #ffd1d1}
form [aria-busy="true"]{opacity:.72;cursor:wait}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{background:var(--navy);color:#dbe7ff;font-size:13px;padding:9px 0}.topbar .container{display:flex;justify-content:space-between;gap:20px;align-items:center}.top-links{display:flex;gap:18px}.top-links a{opacity:.88}.top-links a:hover{opacity:1}
.nav{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(231,237,244,.9)}.navin{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-weight:850;letter-spacing:-.03em}.logo{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:white;font-size:17px;box-shadow:0 8px 22px rgba(21,101,216,.25)}.brand small{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-top:1px}.links{display:flex;gap:20px;align-items:center;font-size:14px;font-weight:650}.links a:hover,.active{color:var(--blue)}.actions{display:flex;align-items:center;gap:9px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:760;border:1px solid var(--line);background:#fff;cursor:pointer}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(21,101,216,.20)}.btn.dark{background:var(--navy);border-color:var(--navy);color:white}.btn.ghost{background:transparent}.menu{display:none;border:0;background:transparent;font-size:24px}
.hero{padding:72px 0 48px}.hero-grid,.split{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;background:#eff7ff;color:var(--blue);border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.dot{width:7px;height:7px;background:var(--cyan);border-radius:99px;box-shadow:0 0 0 5px rgba(36,183,211,.12)}h1{font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-.052em;margin:20px 0 22px}h1 span,h2 span{background:linear-gradient(90deg,var(--blue),#7357d9,var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:18px;line-height:1.65;color:var(--muted);max-width:720px}.hero-actions,.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero-actions{margin:28px 0}.proof{display:flex;gap:26px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.proof b{font-size:21px;display:block}.proof span{font-size:12px;color:var(--muted)}
.visual,.placeholder{border-radius:30px;background:linear-gradient(145deg,#f3f8ff,#e8fafb);border:2px dashed #b6c9dd;min-height:430px;display:grid;place-items:center;color:#6f89a4;text-align:center;padding:24px;font-weight:750;box-shadow:0 18px 45px rgba(16,33,61,.06)}
section{padding:76px 0}.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.kicker{color:var(--blue);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.1em}h2{font-size:clamp(32px,4vw,48px);letter-spacing:-.045em;line-height:1.08;margin:9px 0 0}.section-head p,.muted{color:var(--muted);line-height:1.65}.section-head p{max-width:500px;margin:0}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.card{border-radius:var(--radius);background:#fff;border:1px solid var(--line);overflow:hidden}.card.hover{transition:.2s}.card.hover:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-img{height:200px;background:linear-gradient(145deg,#edf5ff,#f4fbfd);display:grid;place-items:center;color:#829bb4;border-bottom:1px solid var(--line);font-weight:700;text-align:center;padding:20px}.card-body{padding:24px}.tag{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f1f6fb;color:#4f6780;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.card h3{font-size:20px;margin:13px 0 8px}.card p{font-size:14px;color:var(--muted);line-height:1.6}.more{color:var(--blue);font-size:13px;font-weight:800}.iconbox{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#edf5ff;font-size:24px}.feature-list{display:grid;gap:14px;margin:22px 0}.feature{display:flex;gap:13px;align-items:flex-start}.check{width:27px;height:27px;flex:0 0 auto;border-radius:9px;display:grid;place-items:center;background:#e9f8f3;color:var(--green);font-weight:900}.feature strong{font-size:14px}.feature span{display:block;font-size:13px;color:var(--muted);margin-top:3px;line-height:1.5}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:22px;overflow:hidden}.stat{background:#fff;padding:28px;text-align:center}.stat b{display:block;font-size:28px;letter-spacing:-.04em}.stat span{font-size:12px;color:var(--muted)}
.form-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #d9e3ed;border-radius:13px;background:#fff;color:var(--ink);outline:none}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7fb0ea;box-shadow:0 0 0 3px rgba(21,101,216,.08)}
.search-shell{border:1px solid var(--line);border-radius:26px;padding:22px;background:#fff;box-shadow:0 16px 40px rgba(16,33,61,.07)}.filters{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.filters select,.searchbox{padding:13px;border:1px solid #dce5ee;border-radius:13px;background:#fff}.searchbox{grid-column:span 2}.result{display:grid;grid-template-columns:150px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.result:first-of-type{border-top:0}.thumb{height:100px;border-radius:15px;background:linear-gradient(145deg,#edf5ff,#e9fbfa);display:grid;place-items:center;color:#7892ab;font-size:12px;text-align:center}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{padding:5px 8px;border-radius:999px;background:#f3f6fa;font-size:11px;color:#536a82}
.breadcrumb{font-size:12px;color:var(--muted);padding:18px 0}.sticky-cta{position:sticky;top:96px}.price-card{border:1px solid var(--line);border-radius:24px;padding:25px;background:#fff;box-shadow:var(--shadow)}.price-card h3{margin-top:0}.mini-list{display:grid;gap:12px;margin:18px 0}.mini-list div{display:flex;justify-content:space-between;gap:20px;font-size:13px;padding-bottom:10px;border-bottom:1px solid var(--line)}.mini-list span{color:var(--muted)}
.timeline{display:grid;gap:12px}.step{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}.num{width:42px;height:42px;border-radius:13px;background:#edf5ff;color:var(--blue);display:grid;place-items:center;font-weight:850}
.darkbox{background:var(--navy);color:#fff;border-radius:30px;padding:38px}.darkbox p{color:#b8c7da}.darkbox .card{color:var(--ink)}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:760}.faq p{color:var(--muted);line-height:1.6;font-size:14px}
.loc-card{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.loc-card h3{margin:10px 0}.map{min-height:420px;border-radius:28px;background:linear-gradient(145deg,#edf5ff,#f7fbff);border:2px dashed #b7c9dc;display:grid;place-items:center;color:#7890aa;text-align:center}
.cta{padding-bottom:88px}.cta-box{border-radius:32px;background:linear-gradient(115deg,var(--blue),#5b60d7 60%,var(--cyan));color:#fff;padding:48px;display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-box h2{margin:0;max-width:760px}.cta-box p{color:#e5ecff;max-width:660px;line-height:1.6}
footer{background:#0b1c37;color:#c5d2e4;padding:62px 0 28px}.footer-grid{display:grid;grid-template-columns:minmax(250px,1.65fr) repeat(5,minmax(110px,.78fr));gap:clamp(24px,3vw,58px);align-items:start}.footer-grid>div{min-width:0}.footer-grid h4{color:#fff;font-size:13px;line-height:1.2;margin:3px 0 20px}.footer-grid a{display:block;width:max-content;max-width:100%;font-size:12px;line-height:1.45;margin:0 0 12px;color:#aebed2;transition:color .18s,transform .18s}.footer-grid a:hover{color:#fff;transform:translateX(2px)}.footer-brand{padding-right:16px}.footer-brand .brand{margin-bottom:18px}.footer-brand p{max-width:31ch;font-size:12px;line-height:1.72;margin:0}.copyright{border-top:1px solid #233754;margin-top:42px;padding-top:20px;font-size:11px;color:#7890ad}
.mobilebar{display:none}
@media(max-width:1180px){.footer-grid{grid-template-columns:minmax(230px,1.45fr) repeat(3,minmax(120px,1fr))}.footer-brand{grid-row:span 2}}
@media(max-width:980px){.links{display:none}.menu{display:block}.hero-grid,.split{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.searchbox{grid-column:1/-1}.footer-grid{grid-template-columns:repeat(3,1fr);gap:28px}.footer-brand{grid-column:1/-1;grid-row:auto;padding-right:0}.section-head{flex-direction:column;align-items:start}.sticky-cta{position:static}}
@media(max-width:640px){.container{width:min(100% - 28px,var(--max))}.topbar .container{justify-content:center}.top-links{display:none}.actions .btn:not(.primary){display:none}.navin{height:68px}.hero{padding:44px 0 34px}.lead{font-size:16px}.grid-4,.grid-3,.grid-2,.stats,.form-grid,.filters{grid-template-columns:1fr}.field.full,.searchbox{grid-column:auto}.result{grid-template-columns:1fr}.thumb{height:150px}.cta-box{display:block;padding:30px 24px}.cta-box .btn{margin-top:12px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 22px}.footer-brand{grid-column:1/-1}.footer-grid h4{margin-bottom:15px}.footer-grid a{margin-bottom:10px}section{padding:58px 0}.mobilebar{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:40;grid-template-columns:repeat(3,1fr);background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 25px rgba(16,33,61,.08)}.mobilebar a{padding:11px 6px;text-align:center;font-size:11px;font-weight:800}.mobilebar a:nth-child(2){background:var(--blue);color:#fff}body{padding-bottom:52px}}

.home-locations{background:linear-gradient(135deg,#f8fbff 0%,#fff 48%,#f5fbff 100%)}.location-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.location-feature-card{min-height:254px;display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid #dce7f3;border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(28,62,112,.07);position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.location-feature-card:before{content:"";position:absolute;right:-38px;bottom:-46px;width:142px;height:142px;border-radius:50%;background:var(--location-soft,#edf5ff)}.location-feature-card:hover{transform:translateY(-4px);box-shadow:0 21px 44px rgba(28,62,112,.13)}.location-feature-top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:1}.location-country{font-size:10px;line-height:1;padding:7px 9px;border-radius:999px;background:var(--location-tint,#edf5ff);color:var(--location-ink,#285aaa);font-weight:850;letter-spacing:.07em;text-transform:uppercase}.location-count{font-size:11px;color:#5f7590;font-weight:760}.location-feature-card h3{position:relative;z-index:1;font-size:25px;letter-spacing:-.035em;margin:20px 0 9px}.location-feature-card p{position:relative;z-index:1;max-width:25ch;margin:0;color:var(--muted);font-size:13px;line-height:1.62}.location-feature-card .more{position:relative;z-index:1;margin-top:auto;padding-top:22px}.location-feature-card.dubai{--location-tint:#eaf2ff;--location-soft:#dceaff;--location-ink:#245db7}.location-feature-card.abudhabi{--location-tint:#e7faf5;--location-soft:#d9f5ee;--location-ink:#087d6b}.location-feature-card.newjersey{--location-tint:#f2edff;--location-soft:#eae1ff;--location-ink:#7350bc}.location-feature-card.india{--location-tint:#fff2e3;--location-soft:#ffe5c8;--location-ink:#ad6308}.locations-actions,.campaign-actions,.project-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.seasonal-camps{background:linear-gradient(145deg,#fff 0%,#faf8ff 48%,#f4fcff 100%)}.campaign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.campaign-card{min-height:330px;padding:24px;border:1px solid #dfe8f4;border-radius:24px;background:#fff;box-shadow:0 15px 38px rgba(30,57,111,.08);display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden}.campaign-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--campaign-line,#2267f2)}.campaign-card.winter{--campaign-line:#4c61ee}.campaign-card.spring{--campaign-line:#15bfa4}.campaign-card.summer{--campaign-line:#ff9f43}.campaign-art{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;margin:12px 0 18px;background:var(--campaign-art,#eef4ff);color:var(--campaign-line);font-size:28px;font-weight:800}.campaign-card.spring .campaign-art{--campaign-art:#e7faf5}.campaign-card.summer .campaign-art{--campaign-art:#fff2df}.campaign-season{font-size:11px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--campaign-line)}.campaign-card h3{font-size:24px;letter-spacing:-.035em;margin:10px 0 8px}.campaign-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}.campaign-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.campaign-tags span{padding:6px 8px;border-radius:999px;background:#f2f6fb;color:#536a82;font-size:10px;font-weight:800}.campaign-card .more{margin-top:auto;padding-top:20px}
.competition-preview{min-height:330px;padding:31px;border-radius:28px;background:linear-gradient(135deg,#0b2858,#195aaf 57%,#1fb3ba);color:#fff;display:flex;justify-content:space-between;gap:22px;align-items:stretch;overflow:hidden}.competition-preview h2{margin-top:7px;max-width:10ch}.competition-preview p{max-width:43ch;color:#ddecff;line-height:1.62;font-size:14px}.competition-paths{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.competition-paths span{padding:7px 9px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;font-size:10px;font-weight:800}.competition-preview .btn{background:#fff;color:#16498f;border:0}.competition-journey{align-self:flex-end;display:grid;gap:9px;min-width:114px}.competition-journey div{display:flex;align-items:center;gap:9px;padding:9px;border-radius:12px;background:rgba(255,255,255,.12);font-size:11px;font-weight:800}.competition-journey b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:#225cae;font-size:11px}
.student-projects{background:linear-gradient(135deg,#fbfcff,#f6fbff 56%,#fbf8ff)}.project-teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-teaser{min-height:290px;padding:25px;border-radius:24px;border:1px solid #dfe8f4;background:#fff;box-shadow:0 14px 35px rgba(31,63,118,.07);display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden}.project-teaser:after{content:"";position:absolute;right:-38px;bottom:-44px;width:135px;height:135px;border-radius:50%;background:var(--project-soft,#e6efff)}.project-icon{position:relative;z-index:1;display:grid;place-items:center;width:51px;height:51px;border-radius:17px;background:var(--project-tint,#ecf3ff);color:var(--project-ink,#2460bf);font-size:25px;font-weight:850;margin-bottom:16px}.project-teaser h3{position:relative;z-index:1;font-size:21px;line-height:1.16;letter-spacing:-.03em;margin:13px 0 8px}.project-teaser p{position:relative;z-index:1;color:var(--muted);font-size:13px;line-height:1.6;margin:0}.project-teaser .more{position:relative;z-index:1;margin-top:auto;padding-top:20px}.project-teaser.ai{--project-tint:#eaf2ff;--project-soft:#dceaff;--project-ink:#2262c6}.project-teaser.robotics{--project-tint:#e8faf5;--project-soft:#d9f5ec;--project-ink:#087d6b}.project-teaser.creative{--project-tint:#f4edff;--project-soft:#eadfff;--project-ink:#7652bd}
@media(max-width:980px){.location-feature-grid,.campaign-grid,.project-teaser-grid{grid-template-columns:repeat(2,1fr)}.competition-preview{grid-column:1/-1}}@media(max-width:640px){.location-feature-grid,.campaign-grid,.project-teaser-grid{grid-template-columns:1fr}.location-feature-card{min-height:220px}.locations-actions,.campaign-actions,.project-actions{justify-content:stretch}.locations-actions .btn,.campaign-actions .btn,.project-actions .btn{flex:1}.competition-preview{min-height:0;display:block;padding:27px}.competition-journey{margin-top:24px;grid-template-columns:repeat(3,1fr);min-width:0}.competition-journey div{display:grid;justify-items:center;text-align:center;gap:5px}.competition-preview h2{max-width:14ch}}

.finder{margin-top:-18px;position:relative;z-index:5}
.finder-box{background:#fff;border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:0 20px 50px rgba(16,33,61,.11)}
.finder-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr) auto;gap:10px;align-items:end}
.finder-grid .field label{font-size:11px}
.pathway{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rung{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;position:relative;overflow:hidden}
.rung:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--blue),var(--cyan))}
.rung .stage{font-size:11px;color:var(--blue);font-weight:850;text-transform:uppercase;letter-spacing:.08em}.rung h3{font-size:24px;margin:8px 0 2px}.rung .age{font-size:12px;color:var(--muted);font-weight:700}.rung ul{padding-left:18px;color:var(--muted);font-size:13px;line-height:1.7}
.quote{padding:26px;border-radius:22px;border:1px solid var(--line);background:#fff}.quote .stars{color:#f5a623;letter-spacing:2px}.quote blockquote{margin:15px 0;font-size:15px;line-height:1.7;color:#354a64}.quote small{color:var(--muted)}
.truststrip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.trustitem{padding:18px;text-align:center;border:1px solid var(--line);border-radius:16px;background:#fff;font-size:12px;font-weight:800;color:#50677e}
.app-showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}.app-screens{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:center}
.app-screen{min-height:370px;border:8px solid #14243d;border-radius:30px;background:#fff;box-shadow:0 20px 45px rgba(16,33,61,.14);overflow:hidden}.app-screen:nth-child(2){transform:translateY(20px)}
.app-top{padding:15px;border-bottom:1px solid var(--line);font-size:12px;font-weight:850}.app-body{padding:14px}.app-hero{height:92px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;padding:14px;font-size:12px}.app-row{height:54px;border:1px solid var(--line);border-radius:13px;margin-top:10px;padding:10px;font-size:10px;color:var(--muted)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:750;font-size:12px;cursor:pointer}.tabbtn.on{background:var(--navy);color:#fff;border-color:var(--navy)}
@media(max-width:980px){.finder-grid{grid-template-columns:1fr 1fr}.pathway{grid-template-columns:1fr 1fr}.truststrip{grid-template-columns:repeat(3,1fr)}.app-showcase{grid-template-columns:1fr}}
@media(max-width:640px){.finder-grid,.pathway,.truststrip{grid-template-columns:1fr}.app-screens{grid-template-columns:repeat(3,210px);overflow:auto;padding-bottom:18px}.app-screen{min-height:350px}}

.mega-wrap{position:relative}.mega-panel{display:none;position:absolute;left:50%;transform:translateX(-50%);top:70px;width:min(1120px,94vw);background:#fff;border:1px solid var(--line);border-radius:0 0 24px 24px;box-shadow:0 24px 60px rgba(16,33,61,.16);padding:26px;z-index:60}.mega-wrap:hover .mega-panel{display:block}.mega-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.mega-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);margin:0 0 12px}.mega-col a{display:block;padding:6px 0;font-size:12px;color:#4c6078}.mega-col a:hover{color:var(--blue)}
.comparebar{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:35;background:var(--navy);color:white;border-radius:999px;padding:10px 12px 10px 18px;box-shadow:0 15px 40px rgba(16,33,61,.25);display:flex;gap:16px;align-items:center;font-size:12px}.comparebar .btn{padding:9px 14px}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:20px}.datatable{width:100%;border-collapse:collapse;min-width:760px}.datatable th,.datatable td{padding:15px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:top}.datatable th{background:#f6f9fc;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.datatable td:first-child{font-weight:750}
.schedule-card{border:1px solid var(--line);border-radius:20px;padding:20px;background:#fff}.schedule-head{display:flex;justify-content:space-between;gap:15px}.seat{font-size:11px;font-weight:850;padding:6px 9px;border-radius:999px;background:#eaf8f2;color:#07805a}.seat.low{background:#fff4e7;color:#b66809}.seat.wait{background:#f3f4f6;color:#687386}
.story{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff}.story .storyimg{height:230px;background:linear-gradient(145deg,#edf5ff,#eafafa);display:grid;place-items:center;color:#7992aa;font-weight:700;text-align:center}.story .card-body h3{margin-top:8px}
.logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.logo-cell{height:85px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;place-items:center;text-align:center;font-size:10px;font-weight:800;color:#748ba3;padding:10px}
.article{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff}.article-img{height:180px;background:#edf5ff;display:grid;place-items:center;color:#7891aa}.article .card-body h3{font-size:19px}.meta{font-size:11px;color:var(--muted)}
.job{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}.jobtop{display:flex;justify-content:space-between;gap:15px;align-items:start}.job h3{margin:5px 0}.policy-nav{display:grid;gap:8px}.policy-nav a{padding:10px 12px;border-radius:11px;background:#f5f8fc;font-size:12px;font-weight:700}.policy-copy h2{font-size:30px;margin-top:36px}.policy-copy p,.policy-copy li{color:var(--muted);line-height:1.75;font-size:14px}
.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portal-card{padding:30px;border:1px solid var(--line);border-radius:24px;background:#fff;text-align:center}.portal-card .iconbox{margin:auto}.portal-card .btn{width:100%;margin-top:10px}
.checkout{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:start}.summary{border:1px solid var(--line);border-radius:24px;padding:25px;background:#fff;position:sticky;top:100px}.summaryline{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.summaryline.total{font-size:18px;font-weight:850}
.wa{position:fixed;right:20px;bottom:78px;z-index:38;width:52px;height:52px;border-radius:99px;background:#16a66a;color:white;display:grid;place-items:center;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.18)}
@media(max-width:980px){.mega-panel{display:none!important}.logo-grid{grid-template-columns:repeat(3,1fr)}.portal-grid{grid-template-columns:1fr}.checkout{grid-template-columns:1fr}.summary{position:static}}
@media(max-width:640px){.logo-grid{grid-template-columns:repeat(2,1fr)}.comparebar{display:none}.wa{bottom:70px;right:14px}}

body{
 background:
 radial-gradient(circle at 8% 2%,rgba(34,103,242,.07),transparent 22%),
 radial-gradient(circle at 92% 4%,rgba(122,92,245,.06),transparent 22%),
 #fff;
}
.topbar{background:linear-gradient(90deg,#0b2147,#173c7b 52%,#0e6385)}
.nav{box-shadow:0 8px 30px rgba(20,42,79,.04)}
.logo{background:linear-gradient(135deg,#2267f2 0%,#7a5cf5 52%,#16c3d6 100%);box-shadow:0 10px 30px rgba(76,92,240,.27)}
.btn{transition:.22s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(24,50,89,.10)}
.btn.primary{background:linear-gradient(90deg,#2267f2,#5a62f5);border-color:transparent;box-shadow:0 12px 28px rgba(49,92,242,.24)}
.btn.dark{background:linear-gradient(120deg,#0d2452,#193f7d);border-color:transparent}
.hero{
 position:relative;overflow:hidden;padding:82px 0 58px;
 background:
  radial-gradient(circle at 80% 20%,rgba(22,195,214,.11),transparent 24%),
  radial-gradient(circle at 10% 20%,rgba(122,92,245,.08),transparent 25%),
  linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
}
.hero:before{
 content:"";position:absolute;width:300px;height:300px;border-radius:50%;
 border:1px solid rgba(34,103,242,.08);right:-140px;top:90px
}
.hero:after{
 content:"";position:absolute;width:180px;height:180px;border-radius:50%;
 background:linear-gradient(135deg,rgba(246,107,181,.08),rgba(255,200,87,.08));
 left:-80px;bottom:-80px
}
.hero .container{position:relative;z-index:1}
.eyebrow{background:linear-gradient(90deg,#edf4ff,#f2efff,#edfbfc);border:1px solid #dce8ff}
.visual,.placeholder{
 background:
  linear-gradient(135deg,rgba(34,103,242,.08),rgba(122,92,245,.07) 45%,rgba(22,195,214,.09)),
  #f8fbff;
 border:1px solid rgba(114,147,188,.18);
 box-shadow:0 30px 80px rgba(24,53,95,.10);
 position:relative;overflow:hidden;
}
.visual:before,.placeholder:before{
 content:"";position:absolute;inset:18px;border:1px dashed rgba(80,119,168,.22);border-radius:22px
}
.soft{
 background:
 radial-gradient(circle at 10% 10%,rgba(34,103,242,.05),transparent 22%),
 radial-gradient(circle at 90% 30%,rgba(22,195,214,.06),transparent 26%),
 #f7f9fd
}
.card{box-shadow:0 8px 30px rgba(16,33,61,.035);transition:.22s ease}
.card.hover:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(33,77,150,.12);border-color:#d8e5f5}
.iconbox{
 background:linear-gradient(135deg,#edf4ff,#f6f1ff);
 box-shadow:inset 0 0 0 1px rgba(100,130,190,.08)
}
.grid-4 .card:nth-child(4n+1) .iconbox{background:linear-gradient(135deg,#eaf3ff,#eef0ff)}
.grid-4 .card:nth-child(4n+2) .iconbox{background:linear-gradient(135deg,#ecfbf9,#eaf7ff)}
.grid-4 .card:nth-child(4n+3) .iconbox{background:linear-gradient(135deg,#fff4e9,#fff9eb)}
.grid-4 .card:nth-child(4n+4) .iconbox{background:linear-gradient(135deg,#f5edff,#fff0f8)}
.card-img{
 background:
 linear-gradient(135deg,rgba(34,103,242,.07),rgba(22,195,214,.06)),
 #f5f9fd;
}
.tag{background:linear-gradient(90deg,#eef4ff,#f6f1ff);color:#3d5f96;border:1px solid #e3eaf6}
.stats{background:transparent;border:0;gap:12px}
.stat{border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(16,33,61,.04)}
.stat:nth-child(1){background:linear-gradient(180deg,#fff,#f1f6ff)}
.stat:nth-child(2){background:linear-gradient(180deg,#fff,#effcfb)}
.stat:nth-child(3){background:linear-gradient(180deg,#fff,#f7f2ff)}
.stat:nth-child(4){background:linear-gradient(180deg,#fff,#fff6ed)}
.darkbox{
 background:
 radial-gradient(circle at 90% 20%,rgba(22,195,214,.18),transparent 25%),
 linear-gradient(135deg,#0d2452,#123970 55%,#174f75);
 box-shadow:0 25px 60px rgba(13,36,82,.18)
}
.cta-box{
 background:
 radial-gradient(circle at 85% 25%,rgba(255,255,255,.14),transparent 20%),
 linear-gradient(115deg,#2267f2,#6d5cf2 52%,#14b9c8);
 box-shadow:0 25px 70px rgba(64,85,230,.25)
}
.finder-box{
 background:
 linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,252,255,.98));
 border:1px solid #dfe8f5;
 box-shadow:0 24px 65px rgba(37,77,146,.13)
}
.rung{box-shadow:0 10px 30px rgba(15,41,82,.045)}
.rung:nth-child(1):before{background:linear-gradient(90deg,#2267f2,#5f8ff6)}
.rung:nth-child(2):before{background:linear-gradient(90deg,#16c3d6,#30d7ad)}
.rung:nth-child(3):before{background:linear-gradient(90deg,#7a5cf5,#b76cf7)}
.rung:nth-child(4):before{background:linear-gradient(90deg,#ff9f43,#f66bb5)}
.quote{box-shadow:0 12px 34px rgba(16,33,61,.045)}
.trustitem{background:linear-gradient(180deg,#fff,#f8fbff)}
.app-screen{border-color:#12243f;box-shadow:0 24px 60px rgba(15,36,80,.17)}
.app-screen:nth-child(1) .app-hero{background:linear-gradient(135deg,#2267f2,#5a7ef3)}
.app-screen:nth-child(2) .app-hero{background:linear-gradient(135deg,#7a5cf5,#b36af4)}
.app-screen:nth-child(3) .app-hero{background:linear-gradient(135deg,#16b7c8,#17c89e)}
.schedule-card,.loc-card,.job,.portal-card,.summary{box-shadow:0 10px 32px rgba(16,33,61,.045)}
.article:hover,.story:hover,.job:hover,.loc-card:hover,.schedule-card:hover,.portal-card:hover{box-shadow:0 20px 50px rgba(32,73,140,.10);transform:translateY(-2px);transition:.2s}
.logo-cell{background:linear-gradient(180deg,#fff,#fafcff)}
.wa{background:linear-gradient(135deg,#18b778,#0f9d66)}
.colour-band{
 display:grid;grid-template-columns:repeat(4,1fr);gap:12px
}
.colour-card{
 border-radius:22px;padding:26px;color:#10223c;border:1px solid rgba(40,80,130,.08);
 min-height:160px;position:relative;overflow:hidden
}
.colour-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-35px;bottom:-35px;background:rgba(255,255,255,.38)}
.colour-card.blue{background:linear-gradient(135deg,#edf4ff,#dfeaff)}
.colour-card.teal{background:linear-gradient(135deg,#eafbf8,#dff7f4)}
.colour-card.purple{background:linear-gradient(135deg,#f2edff,#e9e2ff)}
.colour-card.orange{background:linear-gradient(135deg,#fff4e8,#ffead2)}
.colour-card h3{margin:0 0 8px;font-size:22px}.colour-card p{font-size:13px;line-height:1.6;color:#5d6f84}
.section-accent-blue{background:linear-gradient(180deg,#f8fbff,#eef5ff)}
.section-accent-purple{background:linear-gradient(180deg,#fbf9ff,#f3efff)}
.section-accent-teal{background:linear-gradient(180deg,#f8fffe,#edfbf9)}
@media(max-width:640px){.colour-band{grid-template-columns:1fr}}

/* === Role-based portal === */
.site-portal-cta{align-self:center;color:var(--ink);font-size:13px;font-weight:820;text-decoration:none;white-space:nowrap;padding:10px 3px}.site-portal-cta:hover{color:var(--blue)}
.portal-login-page{background:linear-gradient(145deg,#f8fbff,#fff 50%,#f8f7ff)}.portal-login-hero{padding:72px 0 78px;position:relative;overflow:hidden}.portal-login-hero:before,.portal-login-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.portal-login-hero:before{width:450px;height:450px;right:-150px;top:-240px;background:radial-gradient(circle,rgba(91,92,244,.15),rgba(91,92,244,0) 67%)}.portal-login-hero:after{width:360px;height:360px;left:-170px;bottom:-200px;background:radial-gradient(circle,rgba(22,195,214,.13),rgba(22,195,214,0) 67%)}.portal-login-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.8fr);gap:66px;align-items:center}.portal-login-copy h1{font-size:clamp(42px,5vw,68px);max-width:12ch;margin:18px 0}.portal-login-copy h1 span{color:var(--blue)}.portal-login-copy .lead{max-width:58ch}.portal-role-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:31px;max-width:650px}.portal-role-preview>div{background:rgba(255,255,255,.8);border:1px solid #e0e9f6;border-radius:19px;padding:14px;display:grid;gap:5px;box-shadow:0 12px 30px rgba(22,55,105,.05)}.portal-role-preview strong{font-size:13px}.portal-role-preview small{font-size:11px;line-height:1.35;color:var(--muted)}.portal-role-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;font-size:17px}.portal-role-icon.student{background:#e9f1ff}.portal-role-icon.parent{background:#ecfaf5}.portal-role-icon.teacher{background:#f2edff}.portal-login-note{margin:24px 0 0;font-size:12px;line-height:1.65;color:#71829a;max-width:60ch}.portal-login-card{background:rgba(255,255,255,.94);border:1px solid #dce7f4;border-radius:30px;padding:29px;box-shadow:0 28px 70px rgba(35,64,125,.14)}.portal-login-card-top{display:flex;gap:12px;align-items:center;margin-bottom:22px}.portal-secure-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,#2267f2,#6a61f4);color:white;font-size:20px}.portal-kicker{display:block;font-size:10px;font-weight:850;letter-spacing:.1em;color:#53719b}.portal-login-card h2{font-size:24px;margin:3px 0 0}.portal-login-card .field{display:grid;gap:6px;margin-top:13px}.portal-login-card label{font-size:12px;font-weight:790;color:#36506f}.portal-login-card input,.portal-login-card select{border:1px solid #d7e2ef;border-radius:11px;background:#fbfdff;padding:12px;font:inherit;font-size:13px;color:#182c49}.portal-login-card input:focus,.portal-login-card select:focus{outline:3px solid rgba(34,103,242,.15);border-color:#5d8bf4}.portal-login-submit{width:100%;display:flex;justify-content:center;gap:9px;margin-top:19px;padding:13px 16px}.portal-login-actions{display:flex;justify-content:space-between;gap:12px;margin-top:16px}.portal-login-actions a{font-size:12px;font-weight:750;color:#2768d1}.portal-login-support{border-top:1px solid #e3ebf5;background:#fff;padding:30px 0}.portal-login-support .container{display:flex;justify-content:space-between;align-items:center;gap:20px}.portal-login-support h2{font-size:22px;margin:3px 0 5px}.portal-login-support p{margin:0;color:var(--muted);font-size:13px}

.portal-shell-body{background:#f6f8fc;padding-bottom:0}.portal-shell-body .topbar,.portal-shell-body .site-header,.portal-shell-body .breadcrumb-nav,.portal-shell-body .whatsapp-float,.portal-shell-body .cookie-preferences-link{display:none}.portal-shell-body .legacy-site{min-height:calc(100vh - 300px)}.portal-dashboard-page{padding-bottom:68px;background:linear-gradient(155deg,#f7faff 0%,#f8f9fd 44%,#fbf9ff 100%)}.portal-dashboard-top{background:#fff;border-bottom:1px solid #e6edf6}.portal-dashboard-top-inner{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px}.portal-brand-mark{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.portal-brand-mark>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#2267f2,#775df3);font-size:18px;box-shadow:0 8px 22px rgba(64,87,223,.23)}.portal-brand-mark strong{font-size:15px}.portal-brand-mark small{display:block;color:#74849b;font-size:10px;letter-spacing:.02em}.portal-top-actions{display:flex;align-items:center;gap:14px}.portal-notification{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#405976;background:#f1f5fb;text-decoration:none}.portal-notification span{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:17px;height:17px;border-radius:99px;background:#ed5f88;color:#fff;border:2px solid #fff;font-size:9px;font-weight:850}.portal-user-chip{display:flex;align-items:center;gap:8px;text-decoration:none;color:#243b59;font-size:12px}.portal-user-chip>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dfeaff;color:#285ec1;font-size:12px;font-weight:850}.portal-shell{display:grid;grid-template-columns:245px minmax(0,1fr);gap:26px;padding-top:27px}.portal-sidebar{align-self:start;position:sticky;top:22px;padding:15px;border:1px solid #e0e9f4;border-radius:23px;background:#fff;box-shadow:0 13px 38px rgba(35,66,117,.06)}.portal-sidebar-user{display:flex;align-items:center;gap:10px;padding:6px 6px 15px;border-bottom:1px solid #edf1f6}.portal-avatar{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;font-weight:850}.portal-avatar.student{background:#e7f0ff;color:#245fca}.portal-avatar.parent{background:#e9fbf5;color:#07816b}.portal-avatar.teacher{background:#f0eaff;color:#7051be}.portal-sidebar-user strong{display:block;font-size:13px}.portal-sidebar-user small{display:block;margin-top:3px;font-size:10px;color:#74869c}.portal-role-switcher{width:100%;margin:13px 0 8px;padding:9px 10px;border:1px solid #dfe7f1;border-radius:10px;background:#f9fbfe;color:#3d5472;font-size:11px;font-weight:750}.portal-nav{display:grid;gap:2px;max-height:calc(100vh - 255px);overflow-y:auto;padding-right:2px}.portal-nav-link{display:flex;align-items:center;gap:10px;border-radius:10px;padding:9px 10px;color:#536a84;text-decoration:none;font-size:12px;font-weight:710}.portal-nav-link>span{width:17px;text-align:center;color:#8295ae;font-size:14px}.portal-nav-link:hover{background:#f4f7fc;color:#245fc6}.portal-nav-link.active{background:linear-gradient(100deg,#eaf1ff,#f1efff);color:#245fc6;font-weight:830}.portal-nav-link.active>span{color:#245fc6}.portal-nav-link.logout{margin-top:5px;color:#a2566f;border-top:1px solid #edf1f6;border-radius:0;padding-top:13px}.portal-help-card{display:flex;gap:9px;align-items:center;margin-top:13px;padding:12px;border-radius:13px;background:linear-gradient(135deg,#eef5ff,#f4efff)}.portal-help-card>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:9px;background:#fff;color:#4365ba;font-size:13px;font-weight:850}.portal-help-card strong{display:block;font-size:11px}.portal-help-card a{display:block;margin-top:2px;color:#3c6dcc;font-size:10px;font-weight:750}.portal-content{min-width:0}.portal-welcome{display:flex;justify-content:space-between;gap:26px;min-height:250px;padding:31px 33px;border-radius:25px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(115deg,#1454c4,#306bea 52%,#4d86ee);box-shadow:0 22px 50px rgba(31,81,189,.20)}.portal-welcome.parent{background:linear-gradient(115deg,#087f74,#13a995 52%,#27c2b0);box-shadow:0 22px 50px rgba(13,142,124,.18)}.portal-welcome.teacher{background:linear-gradient(115deg,#6542b5,#7c60d6 54%,#af6ce1);box-shadow:0 22px 50px rgba(105,72,181,.18)}.portal-welcome>div:first-child{position:relative;z-index:1}.portal-welcome .portal-kicker{color:rgba(255,255,255,.78)}.portal-welcome h1{margin:9px 0;font-size:clamp(30px,3.2vw,44px);letter-spacing:-.045em}.portal-welcome p{max-width:59ch;margin:0;color:#e8f0ff;font-size:14px;line-height:1.62}.portal-context{display:flex;align-items:center;gap:10px;margin-top:25px}.portal-context>span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:rgba(255,255,255,.16);font-size:19px}.portal-context strong,.portal-context small{display:block}.portal-context strong{font-size:12px}.portal-context small{margin-top:3px;color:#e4efff;font-size:10px}.portal-welcome-art{position:absolute;right:30px;top:18px;width:205px;height:205px;opacity:.94}.portal-welcome-art:before,.portal-welcome-art:after,.portal-welcome-art i,.portal-welcome-art b{content:"";position:absolute;border-radius:50%;display:block}.portal-welcome-art:before{inset:20px;border:1px solid rgba(255,255,255,.29)}.portal-welcome-art:after{inset:49px;border:1px solid rgba(255,255,255,.32)}.portal-welcome-art i{width:25px;height:25px;right:20px;top:28px;background:#7ae6ee;box-shadow:0 0 0 9px rgba(255,255,255,.1)}.portal-welcome-art b{width:51px;height:51px;left:19px;bottom:25px;background:rgba(255,255,255,.18)}.portal-welcome-art>span{position:absolute;z-index:1;left:50%;top:42%;font-size:53px;color:#fff;transform:translate(-50%,-50%)}.portal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 28px}.portal-stats article{padding:17px;border:1px solid #e1eaf5;border-radius:17px;background:#fff;box-shadow:0 8px 25px rgba(36,66,115,.045)}.portal-stats article:nth-child(2){background:linear-gradient(150deg,#fff,#eefaf8)}.portal-stats article:nth-child(3){background:linear-gradient(150deg,#fff,#f6f0ff)}.portal-stats article:nth-child(4){background:linear-gradient(150deg,#fff,#fff7ec)}.portal-stats strong,.portal-stats span,.portal-stats small{display:block}.portal-stats strong{font-size:25px;line-height:1;color:#1b3c70}.portal-stats span{margin-top:8px;font-size:11px;font-weight:820;color:#415b7c}.portal-stats small{margin-top:4px;color:#8393a8;font-size:10px}.portal-section{margin:28px 0}.portal-section-heading,.portal-panel-heading{display:flex;justify-content:space-between;gap:15px;align-items:end;margin-bottom:14px}.portal-section-heading h2,.portal-panel-heading h2{margin:3px 0 0;font-size:22px;letter-spacing:-.035em}.portal-section-heading>a,.portal-panel-heading>a{color:#2d6bcf;font-size:12px;font-weight:780;text-decoration:none;white-space:nowrap}.portal-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.portal-action-card{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:10px;align-items:start;min-height:102px;padding:15px;border:1px solid #e0e8f3;border-radius:17px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 8px 24px rgba(28,64,119,.035);transition:.2s ease}.portal-action-card:hover{transform:translateY(-3px);border-color:#ccdcf3;box-shadow:0 16px 35px rgba(32,77,147,.1)}.portal-action-card>span{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;background:linear-gradient(135deg,#eaf1ff,#f0edff);color:#3f69c7;font-weight:850}.portal-action-card:nth-child(2n)>span{background:linear-gradient(135deg,#e5fbf5,#eaf6ff);color:#138b77}.portal-action-card:nth-child(3n)>span{background:linear-gradient(135deg,#fff2e9,#fff8ed);color:#ce702d}.portal-action-card strong,.portal-action-card small{display:block}.portal-action-card strong{font-size:12px}.portal-action-card small{margin-top:5px;color:#718298;font-size:10px;line-height:1.42}.portal-action-card>b{color:#96a8c1;font-size:17px}.portal-two-column{display:grid;grid-template-columns:1.18fr .82fr;gap:16px}.portal-panel{padding:22px;border:1px solid #e0e9f4;border-radius:20px;background:#fff;box-shadow:0 9px 27px rgba(29,61,109,.04)}.portal-timeline{display:grid;gap:3px}.portal-timeline article{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #edf1f6}.portal-timeline time b,.portal-timeline time span{display:block}.portal-timeline time b{font-size:13px}.portal-timeline time span{font-size:9px;color:#8797ac;font-weight:750}.portal-status{display:inline-block;padding:3px 6px;border-radius:99px;font-size:8px;font-weight:850;letter-spacing:.06em}.portal-status.live{background:#e3f9f1;color:#07845d}.portal-status.upcoming{background:#edf1ff;color:#4d62b2}.portal-timeline h3{font-size:12px;margin:5px 0 2px}.portal-timeline p{margin:0;color:#74869d;font-size:10px}.portal-mini-button{border:1px solid #dbe5f1;border-radius:8px;padding:7px 8px;color:#3d68bd;text-decoration:none;font-size:10px;font-weight:780}.portal-notice-list{display:grid;gap:15px}.portal-notice-list article{display:flex;gap:10px;padding-top:14px;border-top:1px solid #edf1f6}.notice-dot{flex:0 0 8px;width:8px;height:8px;margin-top:4px;border-radius:50%;background:#3d76e4}.notice-dot.purple{background:#926ae3}.portal-notice-list strong{font-size:11px}.portal-notice-list p{margin:5px 0;color:#6c7f96;font-size:10px;line-height:1.5}.portal-notice-list small{color:#98a6b7;font-size:9px}.portal-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.portal-detail-card{display:grid;grid-template-columns:43px minmax(0,1fr);gap:14px;min-height:254px;padding:23px;border:1px solid #e0e9f4;border-radius:20px;background:#fff;box-shadow:0 9px 27px rgba(29,61,109,.04)}.portal-detail-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:#eaf1ff;color:#3d69c5;font-size:19px;font-weight:850}.portal-detail-icon.attendance{background:#e5faf3;color:#078064}.portal-detail-icon.materials{background:#f1ebff;color:#7853c3}.portal-detail-icon.assignments{background:#fff3e8;color:#c86a2c}.portal-detail-icon.projects{background:#e7f9fc;color:#117f95}.portal-detail-icon.feedback{background:#fff0f8;color:#c95d99}.portal-detail-icon.security{background:#eef1f6;color:#536881}.portal-detail-card h2{margin:4px 0 8px;font-size:20px;letter-spacing:-.035em}.portal-detail-card p{margin:0;color:#6a7c93;font-size:11px;line-height:1.56}.portal-detail-card .btn{margin-top:14px;padding:8px 12px;font-size:11px}.portal-document-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;margin-top:14px;padding:9px;border-radius:12px;background:#f7f9fd}.portal-document-row>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#ef5b68;color:#fff;font-size:8px;font-weight:850}.portal-document-row strong,.portal-document-row small{display:block}.portal-document-row strong{font-size:10px}.portal-document-row small{margin-top:3px;color:#8595aa;font-size:9px}.portal-document-row .btn{margin:0;padding:6px 8px;font-size:9px}.portal-progress{margin-top:15px}.portal-progress span{display:block;color:#63768e;font-size:10px}.portal-progress span b{color:#1c467d}.portal-progress i{display:block;height:7px;margin-top:7px;border-radius:99px;background:#eaf0f7;overflow:hidden}.portal-progress em{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#1fb9a3,#37d2bc)}.portal-check-list{display:grid;gap:6px;margin:14px 0;padding:0;list-style:none}.portal-check-list li{font-size:10px;color:#63778f}.portal-check-list li:before{content:'✓';display:inline-grid;place-items:center;width:13px;height:13px;margin-right:6px;border-radius:50%;background:#e5f8ef;color:#0b926b;font-size:8px;font-weight:900}.portal-task{margin-top:14px;padding:11px;border-left:3px solid #f29a45;border-radius:0 9px 9px 0;background:#fff8f0}.portal-task span,.portal-task strong,.portal-task small{display:block}.portal-task span{color:#c36b20;font-size:9px;font-weight:800}.portal-task strong{margin:4px 0;color:#334f70;font-size:11px}.portal-task small{color:#8393a7;font-size:9px}.portal-upload-zone{display:flex;gap:8px;align-items:center;margin-top:14px;padding:10px;border:1px dashed #b8cbe5;border-radius:12px;background:#f9fbff}.portal-upload-zone>span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#e4f7fb;color:#168098;font-size:14px}.portal-upload-zone strong,.portal-upload-zone small{display:block}.portal-upload-zone strong{font-size:10px}.portal-upload-zone small{margin-top:3px;color:#8293a8;font-size:8px;line-height:1.35}.portal-detail-card textarea{width:100%;min-height:60px;margin-top:13px;padding:9px;border:1px solid #dbe5ef;border-radius:10px;resize:vertical;font:inherit;font-size:10px}.portal-utility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0}.portal-utility-grid article{display:flex;gap:11px;padding:17px;border-radius:17px;border:1px solid #e0e9f4;background:#fff}.portal-utility-grid h2{margin:4px 0 7px;font-size:15px}.portal-utility-grid p{margin:0;color:#71839a;font-size:10px;line-height:1.55}.portal-utility-grid a{display:inline-block;margin-top:9px;color:#2c67ca;font-size:10px;font-weight:800;text-decoration:none}.portal-inline-panel{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:16px;padding:20px 23px;border-radius:18px;background:linear-gradient(100deg,#edf4ff,#f3efff);border:1px solid #dee7f8}.portal-inline-panel h2{margin:3px 0 5px;font-size:19px}.portal-inline-panel p{margin:0;color:#647891;font-size:11px}.portal-inline-panel .btn{flex:0 0 auto}
@media(max-width:1199px){.site-nav-actions{align-items:center}.site-portal-cta{padding:9px 0}.portal-login-layout{gap:35px}.portal-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-shell{grid-template-columns:215px minmax(0,1fr);gap:18px}.portal-welcome-art{opacity:.7}}
@media(max-width:980px){.site-nav-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}.site-portal-cta{grid-column:auto!important;text-align:center;border:1px solid #dce6f3;border-radius:10px;padding:12px 8px}.portal-login-layout{grid-template-columns:1fr;max-width:700px}.portal-login-copy h1{max-width:14ch}.portal-shell{grid-template-columns:1fr}.portal-sidebar{position:static;padding:13px}.portal-sidebar-user{display:none}.portal-role-switcher{display:block;max-width:250px;margin:0 0 10px}.portal-nav{display:flex;overflow-x:auto;max-height:none;padding-bottom:3px}.portal-nav-link{flex:0 0 auto;white-space:nowrap}.portal-help-card{display:none}.portal-welcome{min-height:230px}.portal-two-column{grid-template-columns:1fr}.portal-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-utility-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.portal-login-hero{padding:42px 0 49px}.portal-login-layout{gap:28px}.portal-login-copy h1{font-size:42px}.portal-role-preview{grid-template-columns:1fr;gap:8px}.portal-role-preview>div{grid-template-columns:36px 1fr;column-gap:10px;align-items:center}.portal-role-preview strong{align-self:end}.portal-role-preview small{align-self:start}.portal-role-icon{grid-row:1/3}.portal-login-card{padding:20px;border-radius:23px}.portal-login-support .container{align-items:flex-start;flex-direction:column}.portal-dashboard-page{padding-bottom:34px}.portal-dashboard-top-inner{min-height:58px}.portal-brand-mark strong{font-size:13px}.portal-user-chip b{display:none}.portal-shell{padding-top:14px}.portal-sidebar{margin:0 -4px;border-radius:17px}.portal-role-switcher{max-width:none}.portal-nav-link{padding:8px 9px;font-size:11px}.portal-welcome{min-height:0;padding:24px 21px;border-radius:20px}.portal-welcome h1{font-size:32px;max-width:12ch}.portal-welcome p{max-width:30ch;font-size:12px}.portal-welcome-art{right:-45px;top:15px;transform:scale(.76);transform-origin:top right}.portal-context{margin-top:18px}.portal-stats{grid-template-columns:repeat(2,1fr);gap:9px;margin:12px 0 23px}.portal-stats article{padding:13px}.portal-stats strong{font-size:21px}.portal-section-heading,.portal-panel-heading{align-items:start;flex-direction:column}.portal-section-heading h2,.portal-panel-heading h2{font-size:20px}.portal-action-grid,.portal-detail-grid,.portal-utility-grid{grid-template-columns:1fr}.portal-action-card{min-height:0}.portal-timeline article{grid-template-columns:44px minmax(0,1fr);align-items:start}.portal-timeline .portal-mini-button{grid-column:2;justify-self:start}.portal-panel{padding:18px}.portal-detail-card{min-height:0;padding:18px}.portal-inline-panel{align-items:flex-start;flex-direction:column;padding:18px}.portal-inline-panel .btn{width:100%}.portal-document-row{grid-template-columns:30px minmax(0,1fr)}.portal-document-row .btn{grid-column:2;justify-self:start}.portal-top-actions{gap:8px}.portal-notification{width:30px;height:30px}}
@media(max-width:1023px){.portal-shell{display:block;min-width:0}.portal-sidebar{width:100%;min-width:0;box-sizing:border-box}.portal-content{min-width:0;max-width:100%}.portal-nav{max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.portal-nav>*{flex:0 0 auto;scroll-snap-align:start}.portal-detail-grid,.portal-action-grid,.portal-two-column,.portal-utility-grid{min-width:0}.rtl-page .portal-nav{padding-right:0;padding-left:2px}}

/* === Course Search V4.1 === */
.search-hero{
 padding:64px 0 34px;
 background:
 radial-gradient(circle at 12% 15%,rgba(34,103,242,.12),transparent 26%),
 radial-gradient(circle at 88% 18%,rgba(122,92,245,.11),transparent 26%),
 radial-gradient(circle at 78% 82%,rgba(22,195,214,.10),transparent 24%),
 linear-gradient(180deg,#ffffff,#f7faff);
}
.search-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:42px;align-items:center}
.search-hero-panel{
 min-height:300px;border-radius:30px;padding:28px;
 background:
 linear-gradient(145deg,rgba(34,103,242,.95),rgba(95,85,240,.94) 52%,rgba(22,195,214,.93));
 color:#fff;box-shadow:0 28px 70px rgba(61,80,220,.23);position:relative;overflow:hidden
}
.search-hero-panel:before{
 content:"";position:absolute;width:220px;height:220px;border-radius:50%;
 background:rgba(255,255,255,.09);right:-70px;top:-50px
}
.search-hero-panel:after{
 content:"";position:absolute;width:130px;height:130px;border-radius:50%;
 border:1px solid rgba(255,255,255,.20);left:-35px;bottom:-40px
}
.hero-panel-content{position:relative;z-index:1}
.hero-panel-content h3{font-size:26px;margin:8px 0 12px}
.hero-panel-content p{color:#e7ecff;line-height:1.6}
.hero-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:20px}
.hero-mini div{padding:12px;border-radius:15px;background:rgba(255,255,255,.12);font-size:11px}
.hero-mini b{display:block;font-size:17px;margin-bottom:2px}

.search-layout{display:grid;grid-template-columns:290px 1fr;gap:26px;align-items:start}
.filter-panel{
 position:sticky;top:98px;
 background:linear-gradient(180deg,#fff,#fbfcff);
 border:1px solid #dfe7f3;border-radius:24px;padding:20px;
 box-shadow:0 18px 45px rgba(31,63,120,.08)
}
.filter-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.filter-title h3{margin:0;font-size:20px}
.filter-group{border-top:1px solid var(--line);padding:16px 0}
.filter-group:first-of-type{border-top:0;padding-top:4px}
.filter-group label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:#5b718d;margin-bottom:8px}
.filter-group select,.filter-group input{
 width:100%;padding:12px 13px;border:1px solid #dbe5ef;border-radius:12px;background:#fff
}
.quickchips{display:flex;gap:7px;flex-wrap:wrap}
.quickchip{
 border:1px solid #dce6f2;background:#fff;padding:7px 10px;border-radius:999px;font-size:11px;cursor:pointer;
 transition:.15s
}
.quickchip:hover,.quickchip.on{background:#eef4ff;border-color:#b8cef5;color:#2556a8}
.search-main{min-width:0}
.search-topbar{
 display:flex;justify-content:space-between;gap:20px;align-items:center;
 margin-bottom:16px;padding:15px 18px;border-radius:18px;
 background:linear-gradient(90deg,#f3f7ff,#f8f5ff,#f2fbfb);
 border:1px solid #e1e9f5
}
.search-topbar strong{font-size:15px}
.search-topbar span{font-size:12px;color:var(--muted)}
.results-stack{display:grid;gap:15px}
.course-result{
 display:grid;grid-template-columns:190px 1fr 170px;gap:20px;align-items:center;
 background:#fff;border:1px solid var(--line);border-radius:22px;padding:15px;
 box-shadow:0 10px 32px rgba(23,51,96,.045);transition:.2s
}
.course-result:hover{transform:translateY(-2px);box-shadow:0 20px 48px rgba(29,67,132,.10);border-color:#d7e4f4}
.course-thumb{
 height:145px;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;
 text-align:center;font-size:11px;font-weight:850;color:#4f6a87;position:relative;overflow:hidden
}
.course-thumb.ai{background:linear-gradient(145deg,#eaf2ff,#efeaff)}
.course-thumb.robotics{background:linear-gradient(145deg,#e9faf7,#eaf6ff)}
.course-thumb.coding{background:linear-gradient(145deg,#fff2e5,#fff9ea)}
.course-thumb.game{background:linear-gradient(145deg,#f5edff,#fff0f7)}
.course-thumb:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-25px;bottom:-25px;background:rgba(255,255,255,.50)}
.course-result h3{font-size:21px;margin:8px 0 7px}
.course-result p{font-size:13px;color:var(--muted);line-height:1.55;margin:6px 0 11px}
.course-meta{display:flex;gap:7px;flex-wrap:wrap}
.course-meta span{padding:6px 8px;border-radius:999px;background:#f5f7fa;color:#52687f;font-size:10px;font-weight:700}
.result-actions{display:grid;gap:8px}
.result-actions .btn{width:100%;padding:10px 13px}
.featured-box{
 border-radius:24px;padding:22px;margin-bottom:18px;
 background:
 radial-gradient(circle at 90% 10%,rgba(255,255,255,.15),transparent 20%),
 linear-gradient(120deg,#17386f,#265cb0 52%,#287da2);
 color:white;display:flex;justify-content:space-between;gap:20px;align-items:center
}
.featured-box p{color:#dce7fa;font-size:13px;line-height:1.5;margin:5px 0 0}
.featured-box .btn{background:white;color:#204b93;border:0}
.emptyhelp{
 padding:20px;border-radius:18px;background:#fff8ed;border:1px solid #ffe4bd;color:#7a5a2d;font-size:13px
}
.mobile-filter-btn{display:none}
@media(max-width:980px){
 .search-hero-grid{grid-template-columns:1fr}
 .search-layout{grid-template-columns:1fr}
 .filter-panel{position:static}
 .course-result{grid-template-columns:150px 1fr}
 .result-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
 .search-hero{padding:42px 0 22px}
 .search-hero-panel{min-height:auto}
 .hero-mini{grid-template-columns:1fr 1fr 1fr}
 .filter-panel{display:none}
 .filter-panel.mobile-open{display:block}
 .mobile-filter-btn{display:inline-flex}
 .search-topbar{align-items:flex-start;flex-direction:column}
 .course-result{grid-template-columns:1fr;padding:12px}
 .course-thumb{height:145px}
 .result-actions{grid-template-columns:1fr}
}

/* Mobile containment pass: protects every public page from desktop-width grids. */
@media (max-width: 767px){
  html,body{max-width:100%;overflow-x:hidden}
  .legacy-site,.legacy-site .container,main,section,article,form{min-width:0;max-width:100%}
  .container{width:min(100% - 28px,1180px)!important;padding-left:0!important;padding-right:0!important}
  .hero-grid,.hero-lead .hero-grid,.split,.two-col,.contact-grid,.enquiry-grid,.course-layout,.program-layout,.video-grid,.benefit-grid,.feature-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  .hero-grid>*,.hero-lead .hero-grid>*,.split>*,.two-col>*,.contact-grid>*,.enquiry-grid>*,.course-layout>*,.program-layout>*{min-width:0;max-width:100%}
  .hero-lead,.hero,.search-hero{overflow:hidden}
  .hero-enquiry-card,.formcard,.enquiry-card,.course-enrol-card,.sticky-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;position:static!important}
  .hero-enquiry-fields,.form-grid,.form-row{grid-template-columns:1fr!important}
  input,select,textarea{max-width:100%;box-sizing:border-box}
  .course-hero-grid,.programme-hero-grid,.course-content-grid{grid-template-columns:minmax(0,1fr)!important}
  .course-sidebar,.programme-sidebar,.course-enrol-card{order:2}
  .video-testimonial-grid,.parent-benefit-grid,.client-logo-grid,.client-spotlight-grid{width:100%;max-width:100%;grid-auto-columns:minmax(250px,78vw)!important}
  .video-testimonial,.parent-benefit,.client-logo-card,.client-spotlight-logo{width:auto!important;min-width:0!important;max-width:100%!important}
  .video-testimonial-grid>*{min-height:0!important}
  .process-grid,.steps-grid,.why-grid,.grid-3,.grid-4{grid-template-columns:1fr!important}
  .process-card,.step-card,.benefit-card,.feature-card{min-width:0!important;width:100%!important;box-sizing:border-box}
  .video-card,.video-testimonial{min-height:0!important;padding:22px!important}
  .whatsapp-float{bottom:78px!important;right:12px!important;padding:11px 14px!important}
  .cookie-preferences-link{bottom:142px!important;left:12px!important}
  .cookie-banner{bottom:142px!important;z-index:1090}
  .mobilebar{z-index:1100}
}

/* === Verified accreditations & approvals === */
.credential-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.credential-card{min-height:218px;padding:22px 18px;border:1px solid #dce7f1;border-radius:20px;background:rgba(255,255,255,.92);box-shadow:0 14px 38px rgba(29,63,113,.07);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s}
.credential-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(29,63,113,.13);border-color:#bdcff0}
.credential-logo{height:75px;width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:15px}.credential-logo img{display:block;max-width:190px;max-height:75px;width:auto;height:auto;object-fit:contain}.credential-card.stem .credential-logo img{max-width:205px}
.credential-card h3{font-size:15px;margin:0 0 6px}.credential-card p{font-size:12px;line-height:1.55;color:var(--muted);margin:0;max-width:28ch}
.licence-pill{margin-top:10px;padding:5px 10px;border-radius:999px;background:#eef4ff;color:#285aaa;font-size:10px;font-weight:850;letter-spacing:.02em}
.iso-quality-badge{width:147px;height:75px;border:2px solid #16a7a3;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:9px;color:#087f80;background:linear-gradient(135deg,#fff,#edfafa)}.iso-quality-badge svg{width:30px;height:30px}.iso-quality-badge b{font-size:15px;line-height:1.05;text-align:left}.iso-quality-badge small{display:block;font-size:9px;letter-spacing:.08em;margin-top:3px}
.credential-note{margin:18px 0 0;text-align:center;color:var(--muted);font-size:11px}
.accreditation-section{background:linear-gradient(135deg,#f5faff,#fbf9ff 50%,#f2fcfb)}
@media(max-width:980px){.credential-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.credential-grid{grid-template-columns:1fr}.credential-card{min-height:190px}}

/* === Video & social spotlight === */
.video-spotlight{display:grid;grid-template-columns:1.18fr .82fr;gap:18px;align-items:stretch}.featured-video{position:relative;min-height:280px;border-radius:22px;overflow:hidden;background:#10244e;box-shadow:0 18px 45px rgba(26,53,100,.16)}.featured-video iframe{border:0;width:100%;height:100%;min-height:280px;display:block}.video-socials{display:grid;grid-template-columns:1fr 1fr;gap:18px}.social-video{padding:22px;border-radius:22px;display:flex;flex-direction:column;justify-content:space-between;min-height:280px;color:#fff;position:relative;overflow:hidden}.social-video:before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-48px;bottom:-58px;background:rgba(255,255,255,.12)}.social-video>*{position:relative;z-index:1}.social-video.instagram{background:linear-gradient(145deg,#713cbe,#cf3f8f 55%,#f27a43)}.social-video.facebook{background:linear-gradient(145deg,#164faf,#2c77e7 60%,#63a0ff)}.social-video .play{width:48px;height:48px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:grid;place-items:center;font-size:17px;margin-bottom:12px}.social-video h3{margin:0;font-size:21px}.social-video p{font-size:13px;line-height:1.55;color:rgba(255,255,255,.85)}.social-video .btn{align-self:flex-start;background:#fff;color:#23467e;border:0}.video-note{font-size:11px;color:var(--muted);margin:14px 0 0}@media(max-width:980px){.video-spotlight{grid-template-columns:1fr}.video-socials{grid-template-columns:1fr 1fr}.social-video{min-height:180px}}@media(max-width:640px){.video-socials{grid-template-columns:1fr}.featured-video,.featured-video iframe{min-height:220px}}

/* === Events calendar & centre details === */
.calendar-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.calendar-stat{padding:15px 16px;border:1px solid #dce7f3;background:rgba(255,255,255,.76);border-radius:16px}.calendar-stat b{display:block;font-size:14px;margin-bottom:3px}.calendar-stat span{font-size:12px;color:var(--muted)}.event-card{padding:0;overflow:hidden}.event-date{padding:18px 20px;background:linear-gradient(135deg,#eef5ff,#f4efff);border-bottom:1px solid var(--line)}.event-date b{display:block;color:#2054a4;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.event-date span{display:block;font-size:22px;font-weight:850;margin-top:4px}.event-card .card-body{padding:20px}.event-card h3{margin:9px 0;font-size:19px}.event-card p{font-size:13px;line-height:1.55}.event-meta{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.event-meta span{font-size:11px;background:#f4f7fb;color:#506a88;border-radius:999px;padding:6px 9px;font-weight:700}.event-card[data-event]{transition:.2s}.event-card[data-event]:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(31,64,119,.12)}.centre-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.centre-fact{padding:14px;border-radius:14px;background:#f7faff;border:1px solid #e0e9f5}.centre-fact b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#5c7695;margin-bottom:5px}.centre-fact span,.centre-fact a{font-size:13px;line-height:1.45}.centre-programmes{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.centre-programmes span{border-radius:999px;background:#eef4ff;color:#285aaa;font-size:11px;padding:6px 9px;font-weight:750}.directions-card{background:linear-gradient(145deg,#143b78,#1e69c9 58%,#3d9ed0);color:#fff;border-radius:24px;padding:30px}.directions-card p{color:#dceaff;line-height:1.6}.directions-card .btn{background:#fff;color:#1e4c95;border:0}.live-notice{padding:14px 16px;border-radius:14px;background:#fff8ed;border:1px solid #ffe2b8;color:#805e28;font-size:12px;line-height:1.5}@media(max-width:640px){.calendar-hero,.centre-facts{grid-template-columns:1fr}}

/* === Certificate moments ribbon === */
.certificate-ribbon-section{overflow:hidden;background:linear-gradient(135deg,#f7fbff,#fcfaff 52%,#f1fcfb)}.certificate-ribbon{width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;padding:4px 0}.certificate-track{display:flex;gap:16px;width:max-content;animation:certificate-scroll 42s linear infinite;padding:10px 16px}.certificate-ribbon:hover .certificate-track{animation-play-state:paused}.certificate-card{width:270px;height:184px;position:relative;overflow:hidden;border-radius:18px;background:#e9eff9;box-shadow:0 10px 28px rgba(29,60,109,.14);flex:0 0 auto}.certificate-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s}.certificate-card:hover img{transform:scale(1.06)}.certificate-card span{position:absolute;left:10px;bottom:10px;border-radius:999px;padding:6px 9px;background:rgba(14,34,72,.78);color:#fff;font-size:11px;font-weight:750;backdrop-filter:blur(6px)}@keyframes certificate-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.certificate-track{animation:none;overflow-x:auto;width:100%;padding-bottom:14px}}@media(max-width:640px){.certificate-card{width:230px;height:160px}.certificate-track{animation-duration:30s}}

/* === Success stories library === */
.story-search-panel{padding:18px;border:1px solid #dfe8f3;background:linear-gradient(135deg,#f8fbff,#fbf9ff);border-radius:20px;display:grid;grid-template-columns:1.4fr repeat(3,.8fr);gap:10px;margin:20px 0}.story-search-panel input,.story-search-panel select{width:100%;padding:12px 13px;border:1px solid #d7e3f0;background:#fff;border-radius:12px;font:inherit;font-size:13px}.story-library-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:16px 0;font-size:13px;color:var(--muted)}.story-library-card{padding:0;overflow:hidden}.story-library-top{padding:18px 20px;background:linear-gradient(135deg,#edf4ff,#f5efff);border-bottom:1px solid var(--line)}.story-library-top .story-year{font-size:12px;font-weight:800;color:#3861a6;letter-spacing:.06em;text-transform:uppercase}.story-library-card .card-body{padding:20px}.story-library-card h3{margin:9px 0;font-size:19px}.story-library-card p{font-size:13px;line-height:1.55}.story-library-tags{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.story-library-tags span{font-size:11px;background:#f3f6fb;color:#506a88;padding:6px 8px;border-radius:999px;font-weight:700}.story-detail-hero{padding-bottom:46px}.story-detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.story-detail-metric{padding:16px;border-radius:16px;background:rgba(255,255,255,.78);border:1px solid #dce7f3}.story-detail-metric b{display:block;font-size:21px;color:#1b5ec8}.story-detail-metric span{font-size:12px;color:var(--muted)}.story-journey{display:grid;gap:12px}.story-journey-item{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff}.story-journey-item b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eaf2ff;color:#245cb1}.story-journey-item h3{margin:2px 0 5px;font-size:16px}.story-journey-item p{font-size:13px;color:var(--muted);margin:0;line-height:1.5}@media(max-width:980px){.story-search-panel{grid-template-columns:1fr 1fr}.story-search-panel input{grid-column:1/-1}}@media(max-width:640px){.story-search-panel,.story-detail-metrics{grid-template-columns:1fr}}

/* === Optimised main navigation === */
.navin-modern{gap:18px}.primary-nav{display:flex;align-items:center;justify-content:center;gap:3px;flex:1;min-width:0}.nav-link,.nav-trigger{display:inline-flex;align-items:center;gap:5px;padding:11px 10px;border:0;background:transparent;color:var(--navy);font:inherit;font-size:13px;font-weight:780;white-space:nowrap;cursor:pointer}.nav-link:hover,.nav-trigger:hover,.nav-item.open>.nav-trigger{color:var(--blue);background:#f4f8ff;border-radius:10px}.find-link{color:var(--blue)}.nav-item{position:relative}.nav-trigger span{font-size:14px;line-height:1;transition:transform .18s}.nav-item.open>.nav-trigger span{transform:rotate(180deg)}.nav-dropdown{display:none;position:absolute;top:calc(100% + 13px);left:50%;transform:translateX(-50%);width:315px;padding:10px;background:#fff;border:1px solid #dce7f3;border-radius:18px;box-shadow:0 22px 54px rgba(15,41,83,.16);z-index:80}.nav-item.open>.nav-dropdown{display:block}.program-menu{width:610px;padding:18px}.institution-menu{width:350px}.nav-menu-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:3px 6px 14px}.nav-menu-head b{font-size:13px}.nav-menu-head a{font-size:12px;color:var(--blue);font-weight:800}.nav-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.nav-menu-grid a,.nav-dropdown>a{display:block;padding:10px 12px;border-radius:11px;color:#425a77;font-size:13px;line-height:1.35}.nav-menu-grid a:hover,.nav-dropdown>a:hover{background:#f3f7ff;color:var(--blue)}.nav-menu-grid b{display:block;color:var(--navy);font-size:13px}.nav-menu-grid span{display:block;margin-top:2px;font-size:11px;color:#70839b}.compact-menu{width:230px}.more-menu{left:auto;right:0;transform:none}.nav-actions{gap:8px;white-space:nowrap}.login-link{padding:9px 5px;color:#405774;font-size:13px;font-weight:780}.login-link:hover{color:var(--blue)}.nav-actions .btn{padding:10px 14px;font-size:13px}.nav-actions .primary{padding-left:17px;padding-right:17px}.mobile-nav{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1180px){.navin-modern{gap:10px}.primary-nav{gap:0}.nav-link,.nav-trigger{padding:10px 7px;font-size:12px}.nav-actions .btn{padding:10px 11px}.login-link{display:none}}
@media(max-width:980px){.primary-nav,.nav-enquire,.login-link{display:none}.navin-modern{height:70px}.nav-actions{margin-left:auto}.menu{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:21px}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(20,42,79,.13);padding:16px 0 20px;z-index:79}.mobile-nav[hidden]{display:none!important}.mobile-nav .container{display:grid;gap:3px}.mobile-nav a,.mobile-nav summary{display:block;padding:12px 4px;color:var(--navy);font-size:15px;font-weight:750;cursor:pointer}.mobile-nav details{border-bottom:1px solid #edf1f6}.mobile-nav details a{padding:9px 12px;font-size:13px;color:#49617e}.mobile-nav summary{list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav .mobile-find{border-radius:12px;background:#eff5ff;color:var(--blue);padding:13px 14px;margin-bottom:4px}.mobile-nav-actions{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:8px;margin-top:12px}.mobile-nav-actions .btn{padding:11px 8px;font-size:12px}.nav{position:sticky}.mega-wrap{display:none!important}}
@media(max-width:640px){.navin-modern .brand{gap:8px;font-size:17px}.navin-modern .logo{width:37px;height:37px;border-radius:11px}.navin-modern .brand small{font-size:8px}.nav-actions .primary{padding:10px 12px;font-size:12px}.menu{width:37px;height:37px}.mobile-nav-actions{grid-template-columns:1fr 1fr 1.2fr}}

/* === Client portfolio === */
.client-hero{padding-bottom:46px}.client-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;max-width:800px}.client-stats div{padding:15px 16px;border:1px solid #dce7f3;border-radius:16px;background:rgba(255,255,255,.76)}.client-stats b{display:block;color:#245eb2;font-size:15px}.client-stats span{display:block;margin-top:3px;font-size:12px;color:var(--muted)}.client-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 22px}.client-tab{border:1px solid #d9e4f1;background:#fff;color:#4c6482;border-radius:999px;padding:10px 15px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.client-tab:hover,.client-tab.on{background:#1c5fc4;border-color:#1c5fc4;color:#fff}.client-logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.client-logo-card{min-height:146px;position:relative;display:flex;align-items:center;justify-content:center;padding:20px 18px;background:#fff;border:1px solid #dfe8f2;border-radius:18px;box-shadow:0 10px 26px rgba(27,59,107,.05);transition:transform .2s,box-shadow .2s}.client-logo-card:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(27,59,107,.12)}.client-logo-card img{max-width:150px;max-height:64px;width:auto;height:auto;object-fit:contain}.client-logo-card span{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);font-size:10px;color:#71859e;font-weight:800;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}.client-disclaimer{margin:18px 0 0;font-size:11px;text-align:center;color:var(--muted)}.client-spotlight{background:linear-gradient(135deg,#f8fbff,#fbfaff 56%,#f3fcfb)}.client-spotlight-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:20px}.client-spotlight-logo{height:82px;display:flex;align-items:center;justify-content:center;padding:14px;border:1px solid #e0e9f2;border-radius:15px;background:rgba(255,255,255,.93)}.client-spotlight-logo img{max-width:118px;max-height:45px;width:auto;height:auto;object-fit:contain}@media(max-width:980px){.client-logo-grid{grid-template-columns:repeat(3,1fr)}.client-spotlight-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.client-stats,.client-logo-grid{grid-template-columns:1fr 1fr}.client-spotlight-grid{grid-template-columns:1fr 1fr}.client-logo-card{min-height:125px;padding:17px 12px}.client-logo-card img{max-width:115px;max-height:52px}.client-tab{font-size:12px;padding:9px 12px}}

/* === Language switcher === */
.language-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px 9px;color:#245eb2;font-size:13px;font-weight:800;white-space:nowrap}.language-toggle:hover{color:#123d82}.mobile-language{justify-content:flex-start!important;padding:11px 4px!important;border-bottom:1px solid #edf1f6}.mobile-nav .mobile-language{color:#245eb2}

/* === Navigation layout safeguards === */
.navin-modern{display:grid;grid-template-columns:auto minmax(0,1fr) auto;justify-content:initial;gap:14px}.primary-nav{justify-content:center}.nav-actions{flex-shrink:0}.nav-actions .language-toggle{min-width:58px;padding-left:7px;padding-right:7px}.primary-nav .nav-link,.primary-nav .nav-trigger{font-size:13px;padding-left:10px;padding-right:10px}
@media(max-width:1260px){.navin-modern{display:flex;gap:12px}.primary-nav{display:none}.nav-actions{margin-left:auto}.nav-actions .login-link{display:none}.menu{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:21px}.mobile-nav:not([hidden]){display:block}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(20,42,79,.13);padding:16px 0 20px;z-index:79}.mobile-nav .container{display:grid;gap:3px}.mobile-nav a,.mobile-nav summary{display:block;padding:12px 4px;color:var(--navy);font-size:15px;font-weight:750;cursor:pointer}.mobile-nav details{border-bottom:1px solid #edf1f6}.mobile-nav details a{padding:9px 12px;font-size:13px;color:#49617e}.mobile-nav summary{list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav .mobile-find{border-radius:12px;background:#eff5ff;color:var(--blue);padding:13px 14px;margin-bottom:4px}.mobile-nav-actions{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:8px;margin-top:12px}.mobile-nav-actions .btn{padding:11px 8px;font-size:12px}}
@media(max-width:640px){.nav-actions .language-toggle{display:none}.navin-modern{gap:8px}.mobile-nav:not([hidden]){display:block}}

/* === Awards & recognition === */
.awards-section{padding:78px 0;background:linear-gradient(135deg,#f8f5ff 0%,#fffaf1 48%,#f4fbff 100%)}
.awards-preview{padding:68px 0}.award-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.award-grid-preview{grid-template-columns:repeat(4,1fr);gap:14px}.award-card{position:relative;overflow:hidden;min-height:340px;display:flex;flex-direction:column;background:rgba(255,255,255,.94);border:1px solid #e6def3;border-radius:22px;box-shadow:0 15px 38px rgba(59,41,105,.10);transition:transform .22s,box-shadow .22s}.award-card:hover{transform:translateY(-5px);box-shadow:0 22px 52px rgba(59,41,105,.16)}.award-image{height:205px;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(circle at 55% 8%,#fff9e5 0%,#f4efff 55%,#effaff 100%)}.award-image img{max-width:100%;max-height:100%;display:block;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(33,32,61,.12))}.award-copy{padding:17px 18px 19px}.award-year{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f2ecff;color:#7450b4;font-size:10px;font-weight:850;letter-spacing:.07em}.award-copy h3{font-size:18px;line-height:1.18;margin:9px 0 6px}.award-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.award-card.compact{min-height:280px}.award-card.compact .award-image{height:155px;padding:12px}.award-card.compact .award-copy{padding:13px 14px 15px}.award-card.compact .award-copy h3{font-size:15px;margin:7px 0 4px}.award-card.compact .award-copy p{font-size:11px}.award-actions{display:flex;justify-content:center;margin-top:24px}@media(max-width:980px){.award-grid,.award-grid-preview{grid-template-columns:repeat(2,1fr)}.award-card.compact{min-height:265px}}@media(max-width:640px){.awards-section{padding:52px 0}.award-grid,.award-grid-preview{grid-template-columns:1fr}.award-card,.award-card.compact{min-height:0}.award-image,.award-card.compact .award-image{height:210px}.award-card.compact .award-copy{padding:17px 18px 19px}.award-card.compact .award-copy h3{font-size:18px}.award-card.compact .award-copy p{font-size:12px}}
/* About page educational approach */
.about-approach{padding:88px 0;background:linear-gradient(135deg,#f4f8ff,#f2fbfb 55%,#faf5ff)}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.approach-grid article{padding:24px;border-radius:22px;background:#fff;border:1px solid #dce7f6;box-shadow:0 12px 28px rgba(20,43,82,.08)}.approach-grid article:nth-child(2){border-top:4px solid #26b9b6}.approach-grid article:nth-child(3){border-top:4px solid #7456e8}.approach-grid article:nth-child(4){border-top:4px solid #f08b43}.approach-grid span{font-weight:800;color:#2767f2}.approach-grid h3{margin:12px 0 8px}.approach-note{max-width:760px;margin:28px auto 0;text-align:center;font-weight:650;color:#34506f}@media(max-width:850px){.approach-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.approach-grid{grid-template-columns:1fr}.about-approach{padding:62px 0}}
.course-facts,.course-proof{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.course-facts span,.course-proof span{padding:8px 11px;border-radius:999px;background:#edf5ff;color:#234b87;font-size:12px;font-weight:750}.course-quick{padding:22px 0;background:linear-gradient(100deg,#eff8ff,#f6f1ff)}.course-quick-grid,.journey-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.course-quick-grid>div,.journey-cards article{padding:18px 20px;border-radius:18px;background:#fff;border:1px solid #dce7f6}.course-quick-grid b,.course-quick-grid span{display:block}.course-quick-grid b{font-size:12px;color:#31567e;margin-bottom:5px}.course-quick-grid span{font-size:13px;font-weight:650}.course-journey{padding:78px 0;background:linear-gradient(135deg,#fbf7ff,#eefaff)}.journey-cards article{border-top:4px solid #2767f2}.journey-cards article:nth-child(2){border-top-color:#16b9b5}.journey-cards article:nth-child(3){border-top-color:#7658e8}.journey-cards article:nth-child(4){border-top-color:#f08b43}.journey-cards span{font-weight:850;color:#2767f2}.journey-cards h3{margin:9px 0 6px}.journey-cards p{margin:0;color:var(--muted)}.video-card{padding:30px;border-radius:24px;background:linear-gradient(135deg,#142b52,#3e55aa);color:#fff}.video-card p{color:#dbe9ff}.video-card .btn{background:#fff;color:#1e4fba}@media(max-width:850px){.course-quick-grid,.journey-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.course-quick-grid,.journey-cards{grid-template-columns:1fr}}
.course-structure-section{padding:82px 0;background:linear-gradient(135deg,#fbfdff,#f7f3ff)}.age-tabs{display:flex;justify-content:center;gap:14px;margin:28px 0 30px}.age-tab{min-width:190px;padding:15px 22px;border:1.5px solid #176cf1;border-radius:8px;background:#fff;color:#122f5b;font:700 16px/1 var(--font,inherit);cursor:pointer}.age-tab.active{background:#176cf1;color:#fff;box-shadow:0 9px 22px rgba(23,108,241,.18)}.stage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.stage-card{display:flex;flex-direction:column;min-height:460px;overflow:hidden;border:1.5px solid #20aee7;border-radius:19px;background:#eefaff}.stage-card:nth-child(odd){border-color:#efc726;background:#fff7d9}.stage-card h3{margin:0;padding:30px 20px 26px;text-align:center;font-size:21px}.stage-sessions{padding:17px 12px;background:#12aee4;color:#fff;text-align:center;font-size:19px;font-weight:800}.stage-card:nth-child(odd) .stage-sessions{background:#f4d73e;color:#101828}.stage-card ul{margin:0;padding:27px 28px 16px 44px;flex:1;line-height:1.55;font-weight:600}.stage-card li{margin:0 0 10px}.stage-card .btn{margin:0 24px 28px;text-align:center;background:#12aee4;color:#fff;border:0}.stage-card:nth-child(odd) .btn{background:#f4d73e;color:#101828}.stage-card footer{padding:22px 10px;text-align:center;background:#12aee4;color:#08334b;font-weight:700}.stage-card:nth-child(odd) footer{background:#f4d73e;color:#3f3600}.related-programmes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.related-programme-card{display:block;overflow:hidden;border:1.5px solid #1aace8;border-radius:20px;text-decoration:none;color:inherit;background:#edfaff}.related-programme-card.related-gold{border-color:#efc726;background:#fff7da}.related-visual{height:180px;display:grid;place-items:center;background:linear-gradient(135deg,#d7f6ff,#fff);color:#22699d;font-size:14px;font-weight:800;letter-spacing:.08em}.related-programme-card>div:last-child{position:relative;padding:23px 25px 28px}.related-programme-card h3{margin:0 0 9px;font-size:26px}.related-programme-card p{min-height:50px;margin:0 0 16px;color:#4b617b}.related-programme-card span{font-weight:800;color:#176cf1}@media(max-width:900px){.stage-grid{grid-template-columns:repeat(2,1fr)}.stage-card{min-height:390px}}@media(max-width:600px){.age-tabs{align-items:stretch;flex-direction:column}.age-tab{width:100%}.stage-grid,.related-programmes{grid-template-columns:1fr}.stage-card{min-height:auto}.related-visual{height:130px}}
/* Production consent, breadcrumb and contact controls */
.breadcrumb-nav{display:flex;gap:9px;align-items:center;padding-top:14px;font-size:13px;color:var(--muted)}.breadcrumb-nav a{color:var(--blue);text-decoration:none}.breadcrumb-nav span[aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.consent-field{display:flex;gap:9px;align-items:flex-start;margin-top:13px}.consent-field input{width:18px;height:18px;margin-top:2px;flex:0 0 auto}.consent-field label{font-size:12px;line-height:1.45}.cookie-banner{position:fixed;z-index:1080;left:20px;right:20px;bottom:20px;max-width:760px;margin:auto;padding:18px 20px;border:1px solid #d6e1f3;border-radius:16px;background:#fff;box-shadow:0 20px 55px rgba(12,35,73,.24);display:flex;align-items:center;justify-content:space-between;gap:18px}.cookie-banner p{margin:0;font-size:13px;color:#41536d}.cookie-banner div{display:flex;gap:8px;white-space:nowrap}.cookie-banner .btn{font-size:13px;padding:8px 12px}.whatsapp-float{position:fixed;z-index:1030;right:20px;bottom:24px;border-radius:999px;padding:12px 17px;background:#25d366;color:#063b22!important;text-decoration:none;font-weight:800;box-shadow:0 12px 28px rgba(0,0,0,.18)}.mobilebar~.whatsapp-float{bottom:76px}@media(max-width:640px){.cookie-banner{left:12px;right:12px;bottom:12px;display:block}.cookie-banner div{margin-top:12px;white-space:normal}.breadcrumb-nav{padding-top:11px}.whatsapp-float{right:14px}}
.cookie-preferences-link{position:fixed;z-index:1025;left:16px;bottom:14px;font-size:12px;color:#526984;background:#fff;padding:7px 10px;border-radius:999px;border:1px solid #dbe5f2;box-shadow:0 4px 12px rgba(12,33,72,.12);text-decoration:none}.mobilebar~.cookie-preferences-link{bottom:76px}@media(max-width:640px){.cookie-preferences-link{left:12px;bottom:12px}}

/* === Homepage conversion and mobile-layout refinements === */
.site-header .navbar{box-shadow:0 8px 26px rgba(19,43,82,.04)}
.site-header .navbar .container{gap:16px}
.site-header .navbar-nav{min-width:0}
.site-header .nav-link{font-weight:720;color:#122c55;white-space:nowrap}
.site-nav-actions{flex:0 0 auto;align-items:center}
.site-nav-actions .btn{min-height:44px;white-space:nowrap;font-weight:850;line-height:1.1}
.site-enquire-cta{background:#fff!important;border:1px solid #d7e4f3!important;color:#173962!important}
.site-demo-cta,.site-demo-cta:visited{min-width:144px;background:linear-gradient(100deg,#2168f2,#5a5ef4)!important;border-color:transparent!important;color:#fff!important;text-shadow:none!important;box-shadow:0 10px 24px rgba(53,87,236,.28)!important}
.site-demo-cta:hover,.site-demo-cta:focus-visible{background:linear-gradient(100deg,#1559df,#494bea)!important;color:#fff!important;transform:translateY(-1px)}
.hero-lead{padding-top:58px;padding-bottom:56px}
.hero-lead .hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:42px;align-items:start}
.hero-copy{padding-top:18px}
.hero-enquiry-card{position:relative;overflow:hidden;padding:24px;border:1px solid #d4e2f6;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(243,249,255,.96));box-shadow:0 22px 48px rgba(31,68,130,.14)}
.hero-enquiry-card:before{content:"";position:absolute;right:-54px;top:-68px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(101,93,244,.19),rgba(41,180,206,.06) 58%,transparent 60%)}
.hero-enquiry-card>*{position:relative;z-index:1}
.hero-enquiry-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.hero-enquiry-kicker{font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#2167e9}
.hero-enquiry-time{font-size:10px;font-weight:750;color:#59708e;background:#edf6ff;padding:6px 8px;border-radius:999px}
.hero-enquiry-card h2{font-size:28px;margin:0 0 7px;letter-spacing:-.04em}
.hero-enquiry-card>p{margin:0 0 17px;color:#5a6f89;font-size:13px;line-height:1.55}
.hero-enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.hero-enquiry-fields label{display:block;margin-bottom:5px;color:#395574;font-size:11px;font-weight:800}
.hero-enquiry-fields input,.hero-enquiry-fields select{display:block;width:100%;height:42px;padding:9px 11px;border:1px solid #ceddec;border-radius:11px;background:#fff;color:#183252;font-size:13px;outline:none}
.hero-enquiry-fields input:focus,.hero-enquiry-fields select:focus{border-color:#276df1;box-shadow:0 0 0 3px rgba(39,109,241,.13)}
.hero-consent{display:flex;gap:8px;align-items:flex-start;margin:13px 0}
.hero-consent input{width:16px;height:16px;margin:2px 0 0;flex:0 0 auto}
.hero-consent label{color:#58708d;font-size:11px;line-height:1.45}
.hero-consent a{color:#1b60c9;text-decoration:underline;text-underline-offset:2px}
.hero-enquiry-submit{width:100%;min-height:45px;border:0!important;color:#fff!important;font-weight:850}
.hero-demo-link{display:block;margin-top:14px;color:#516982;font-size:12px;text-align:center}
.hero-demo-link strong{color:#1e62cd}
.stats,.proof,.client-stats{min-width:0}
.stats .stat,.proof>div,.client-stats>div{min-width:0}
.video-testimonial-grid,.parent-benefit-grid,.client-logo-grid,.client-spotlight-grid{align-items:stretch}
.video-testimonial,.parent-benefit,.client-logo-card,.client-spotlight-logo{min-width:0}
.client-logo-card img,.client-spotlight-logo img{max-width:100%;height:auto}
@media(max-width:1199px){
  .site-header .navbar-expand-xl .navbar-collapse{padding-top:12px}
  .site-nav-actions{padding:10px 0 2px}
  .hero-lead .hero-grid{grid-template-columns:minmax(0,1fr) minmax(330px,.82fr);gap:28px}
}
@media(max-width:980px){
  .hero-lead .hero-grid{grid-template-columns:1fr}
  .hero-copy{padding-top:0}
  .hero-enquiry-card{max-width:700px}
  .site-nav-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important}
  .site-nav-actions .btn{width:100%}
}
@media(max-width:640px){
  .site-header .navbar .container{gap:9px}
  .site-header .brand{max-width:calc(100% - 150px)}
  .site-header .brand>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-header .navbar-toggler{padding:6px 8px}
  .site-nav-actions{grid-template-columns:1fr!important;margin-top:10px!important}
  .site-enquire-cta{display:none!important}
  .site-demo-cta{display:flex!important;width:100%;min-width:0;font-size:14px!important;padding:13px 16px!important}
  .hero-lead{padding-top:30px;padding-bottom:32px}
  .hero-lead h1{font-size:clamp(37px,11vw,50px)}
  .hero-lead .hero-actions{margin:20px 0}
  .hero-lead .hero-actions .btn{width:100%;min-height:46px}
  .hero-enquiry-card{padding:19px 16px;border-radius:20px}
  .hero-enquiry-top{align-items:flex-start;flex-direction:column;gap:7px}
  .hero-enquiry-card h2{font-size:25px}
  .hero-enquiry-fields{grid-template-columns:1fr;gap:9px}
  .hero-enquiry-fields input,.hero-enquiry-fields select{height:43px}
  .proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:23px;padding-top:18px}
  .proof b{font-size:18px;line-height:1.1}.proof span{display:block;font-size:10px;line-height:1.3;margin-top:3px}
  .stats,.client-stats{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,72vw);grid-template-columns:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;gap:12px;padding:2px 2px 12px;border:0;background:transparent;-webkit-overflow-scrolling:touch}
  .stats .stat,.client-stats>div{scroll-snap-align:start;border:1px solid #dce7f3;border-radius:16px;background:#fff}
  .client-logo-grid,.client-spotlight-grid,.video-testimonial-grid,.parent-benefit-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(258px,82vw);grid-template-columns:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;gap:14px;padding:2px 2px 14px;-webkit-overflow-scrolling:touch}
  .client-logo-card,.client-spotlight-logo,.video-testimonial,.parent-benefit{scroll-snap-align:start}
  .client-logo-card{min-height:136px}.client-spotlight-logo{height:105px}
  .client-logo-grid::-webkit-scrollbar,.client-spotlight-grid::-webkit-scrollbar,.video-testimonial-grid::-webkit-scrollbar,.parent-benefit-grid::-webkit-scrollbar,.stats::-webkit-scrollbar,.client-stats::-webkit-scrollbar{height:6px}
  .client-logo-grid::-webkit-scrollbar-thumb,.client-spotlight-grid::-webkit-scrollbar-thumb,.video-testimonial-grid::-webkit-scrollbar-thumb,.parent-benefit-grid::-webkit-scrollbar-thumb,.stats::-webkit-scrollbar-thumb,.client-stats::-webkit-scrollbar-thumb{background:#c5d6ed;border-radius:999px}
  .mobilebar{grid-template-columns:repeat(3,minmax(0,1fr));min-height:58px}
  .mobilebar a{display:flex;align-items:center;justify-content:center;padding:12px 5px;font-size:11px;line-height:1.15;white-space:normal}
  .mobilebar a:nth-child(2){background:linear-gradient(100deg,#2168f2,#5a5ef4);color:#fff!important;font-size:12px}
  body{padding-bottom:64px}
}

/* InnoVan booking landing page */
.innovavan-page{color:#102b52;background:#fff;overflow:hidden}.innovavan-page h1,.innovavan-page h2,.innovavan-page h3{color:#102b52}.innovavan-hero{position:relative;padding:72px 0 0;background:radial-gradient(circle at 12% 18%,rgba(27,183,198,.17),transparent 29%),radial-gradient(circle at 84% 16%,rgba(101,80,232,.15),transparent 28%),linear-gradient(136deg,#f8fcff,#f0f7ff 52%,#fbf9ff)}.innovavan-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.88fr);gap:54px;align-items:start}.innovavan-hero-copy{padding:35px 0 14px}.innovavan-kicker,.innovavan-section-kicker,.innovavan-form-eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#156cba}.innovavan-kicker span{color:#f2a329;font-size:20px;line-height:1}.innovavan-hero h1{font-size:clamp(48px,5.4vw,79px);line-height:.96;letter-spacing:-.07em;margin:20px 0}.innovavan-hero h1 em,.innovavan-intro h2 em{font-style:normal;color:#3458dc}.innovavan-lead{max-width:620px;font-size:20px;line-height:1.56;color:#4b6483}.innovavan-hero-actions{display:flex;align-items:center;gap:22px;margin:30px 0}.innovavan-hero-actions .btn,.innovavan-final-actions .btn{padding:15px 20px;font-weight:850}.innovavan-text-link{color:#264a7a;font-size:14px;font-weight:800;text-decoration:none}.innovavan-text-link:hover{color:#2663e9}.innovavan-proof{display:flex;gap:26px;padding:22px 0 0;margin:0;list-style:none;border-top:1px solid #d8e7f4}.innovavan-proof li{display:grid;gap:5px}.innovavan-proof b{font-size:23px;line-height:1;color:#1d66d8}.innovavan-proof span{font-size:12px;line-height:1.35;color:#58708e}.innovavan-booking-card{position:relative;padding:28px;border:1px solid #dce8f7;border-radius:26px;background:rgba(255,255,255,.94);box-shadow:0 24px 56px rgba(23,61,117,.16)}.innovavan-booking-card:before{content:"";position:absolute;right:-40px;top:-45px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(53,81,225,.14),transparent 67%);pointer-events:none}.innovavan-booking-card>*{position:relative}.innovavan-booking-card h2{max-width:400px;font-size:29px;line-height:1.08;letter-spacing:-.04em;margin:10px 0 9px}.innovavan-booking-card>p{margin:0 0 17px;color:#5a718c;font-size:13px;line-height:1.5}.innovavan-form{display:grid;gap:12px}.innovavan-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.innovavan-form label{display:block;margin:0 0 5px;font-size:11px;font-weight:800;color:#385472}.innovavan-form input:not([type=checkbox]),.innovavan-form select,.innovavan-form textarea{display:block;width:100%;border:1px solid #cdddec;border-radius:11px;background:#fff;color:#153052;font:inherit;font-size:13px;line-height:1.25;outline:none}.innovavan-form input:not([type=checkbox]),.innovavan-form select{height:42px;padding:9px 10px}.innovavan-form textarea{padding:10px;resize:vertical}.innovavan-form input:focus,.innovavan-form select:focus,.innovavan-form textarea:focus{border-color:#286df0;box-shadow:0 0 0 3px rgba(40,109,240,.13)}.innovavan-form .honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.innovavan-submit{width:100%;border:0!important;padding:13px 16px!important;font-weight:850}.innovavan-truck-wrap{position:relative;margin-top:8px}.innovavan-truck{position:relative;max-width:1180px;margin:0 auto -1px}.innovavan-truck:before{content:"";position:absolute;inset:15% 8% 0;background:radial-gradient(ellipse,rgba(23,76,156,.25),transparent 64%);filter:blur(24px)}.innovavan-truck img{position:relative;display:block;width:100%;height:auto}.innovavan-truck figcaption{position:absolute;left:7%;bottom:7%;padding:8px 11px;border-radius:999px;background:rgba(16,43,82,.88);color:#fff;font-size:11px;font-weight:800;letter-spacing:.05em}.innovavan-intro{padding:92px 0;background:#102f5f;color:#fff}.innovavan-intro h2{color:#fff;font-size:clamp(31px,3.8vw,51px);letter-spacing:-.055em;line-height:1.05;margin:12px 0}.innovavan-intro h2 em{color:#70e1df}.innovavan-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.innovavan-intro .innovavan-section-kicker{color:#72e3df}.innovavan-intro p{font-size:18px;line-height:1.65;color:#d7e7ff;margin:0}.innovavan-inline-points{display:grid;gap:9px;margin-top:22px;color:#fff;font-size:13px;font-weight:750}.innovavan-unit{padding:92px 0;background:linear-gradient(145deg,#fbfdff,#f4f8ff)}.innovavan-unit-grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:58px;align-items:center}.innovavan-photo-frame{overflow:hidden;border-radius:28px;box-shadow:0 24px 58px rgba(23,57,110,.18)}.innovavan-photo-frame img{display:block;width:100%;height:auto}.innovavan-unit h2,.innovavan-board h2,.innovavan-audiences h2,.innovavan-day h2,.innovavan-final h2{font-size:clamp(32px,3.8vw,48px);line-height:1.08;letter-spacing:-.055em;margin:12px 0}.innovavan-unit p,.innovavan-day p,.innovavan-final p{font-size:16px;line-height:1.65;color:#58708d}.innovavan-fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.innovavan-fact-grid div{padding:15px;border:1px solid #dce8f5;border-radius:14px;background:#fff}.innovavan-fact-grid b{display:block;color:#1866d4;font-size:17px;margin-bottom:4px}.innovavan-fact-grid span{font-size:12px;line-height:1.4;color:#58708d}.innovavan-board{padding:92px 0;background:#fff}.innovavan-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.innovavan-section-head>div{max-width:700px}.innovavan-section-head>p{max-width:410px;margin:0;color:#607793;line-height:1.6}.innovavan-zone-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.innovavan-zone-grid article{min-height:205px;padding:22px;border:1px solid #dbe7f4;border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(17,57,115,.05)}.innovavan-zone-grid article>span{display:grid;place-items:center;width:41px;height:41px;border-radius:13px;background:linear-gradient(135deg,#e8f9fb,#e9edff);color:#2261c5;font-size:12px;font-weight:900;letter-spacing:.04em}.innovavan-zone-grid h3{font-size:17px;line-height:1.2;margin:17px 0 8px}.innovavan-zone-grid p{margin:0;color:#60738e;font-size:13px;line-height:1.48}.innovavan-zone-grid article:nth-child(2)>span,.innovavan-zone-grid article:nth-child(6)>span{background:linear-gradient(135deg,#fff5d7,#ffecbb);color:#a96300}.innovavan-zone-grid article:nth-child(3)>span,.innovavan-zone-grid article:nth-child(7)>span{background:linear-gradient(135deg,#e8e5ff,#f3e8ff);color:#6841b4}.innovavan-zone-cta{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#1568d6,#524bd8)!important;border:0!important}.innovavan-zone-cta h3,.innovavan-zone-cta p,.innovavan-zone-cta a{color:#fff}.innovavan-zone-cta h3{margin-top:0}.innovavan-zone-cta p{color:#dce9ff}.innovavan-zone-cta a{margin-top:10px;font-size:13px;font-weight:850;text-decoration:none}.innovavan-audiences{padding:92px 0;background:linear-gradient(135deg,#f6fbff,#faf7ff)}.innovavan-audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.innovavan-audience-grid article{min-height:285px;padding:24px;border-radius:20px;background:#fff;border:1px solid #dee9f5;display:flex;flex-direction:column}.innovavan-audience-grid article:nth-child(2){border-top:4px solid #20b9b3}.innovavan-audience-grid article:nth-child(3){border-top:4px solid #f19943}.innovavan-audience-grid article:nth-child(4){border-top:4px solid #7658e5}.innovavan-audience-number{font-size:12px;font-weight:900;letter-spacing:.1em;color:#2870e7}.innovavan-audience-grid h3{margin:18px 0 9px;font-size:23px}.innovavan-audience-grid p{margin:0;color:#5d738f;font-size:13px;line-height:1.55}.innovavan-audience-grid small{display:block;margin-top:auto;padding-top:18px;color:#1f60c6;font-size:12px;font-weight:800}.innovavan-day{padding:92px 0;background:#102f5f}.innovavan-day h2{color:#fff}.innovavan-day .innovavan-section-kicker{color:#72e3df}.innovavan-day p{color:#d7e7ff}.innovavan-day-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.innovavan-day ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}.innovavan-day li{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:18px;border:1px solid rgba(164,206,255,.28);border-radius:16px;background:rgba(255,255,255,.06)}.innovavan-day li>b{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#77e0de;color:#15365e;font-size:12px}.innovavan-day li h3{color:#fff;font-size:17px;margin:0 0 5px}.innovavan-day li p{margin:0;font-size:13px}.innovavan-final{padding:75px 0;background:linear-gradient(135deg,#f5efff,#eefaff)}.innovavan-final-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.innovavan-final h2{margin-bottom:8px}.innovavan-final p{max-width:700px;margin:0}.innovavan-final-actions{display:flex;gap:10px;flex:0 0 auto}@media(max-width:980px){.innovavan-hero-grid,.innovavan-unit-grid,.innovavan-intro-grid,.innovavan-day-grid{grid-template-columns:1fr;gap:32px}.innovavan-booking-card{max-width:700px}.innovavan-zone-grid,.innovavan-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.innovavan-section-head{align-items:start;flex-direction:column;gap:10px}.innovavan-section-head>p{max-width:650px}.innovavan-final-grid{align-items:start;flex-direction:column}}@media(max-width:640px){.innovavan-hero{padding-top:35px}.innovavan-hero-copy{padding-top:0}.innovavan-hero h1{font-size:clamp(45px,14vw,61px)}.innovavan-lead{font-size:17px}.innovavan-hero-actions,.innovavan-final-actions{align-items:stretch;flex-direction:column;gap:10px}.innovavan-hero-actions .btn,.innovavan-final-actions .btn{width:100%;text-align:center}.innovavan-proof{gap:8px;justify-content:space-between}.innovavan-proof li{min-width:0;flex:1}.innovavan-proof b{font-size:19px}.innovavan-proof span{font-size:10px}.innovavan-booking-card{padding:21px 16px;border-radius:21px}.innovavan-booking-card h2{font-size:26px}.innovavan-field-grid{grid-template-columns:1fr}.innovavan-truck-wrap{width:100%;padding:0}.innovavan-truck{margin-top:20px;width:112%;margin-left:-6%}.innovavan-truck figcaption{display:none}.innovavan-intro,.innovavan-unit,.innovavan-board,.innovavan-audiences,.innovavan-day{padding:60px 0}.innovavan-intro h2,.innovavan-unit h2,.innovavan-board h2,.innovavan-audiences h2,.innovavan-day h2,.innovavan-final h2{font-size:31px}.innovavan-intro p{font-size:16px}.innovavan-fact-grid,.innovavan-zone-grid,.innovavan-audience-grid{grid-template-columns:1fr}.innovavan-zone-grid{gap:11px}.innovavan-zone-grid article{min-height:0}.innovavan-zone-cta{min-height:190px!important}.innovavan-audience-grid article{min-height:220px}.innovavan-day li{grid-template-columns:40px 1fr;padding:15px}.innovavan-final{padding:58px 0}}
