:root {
    --bg: #060915;
    --bg-2: #0a1022;
    --surface: rgba(17, 25, 51, .66);
    --surface-solid: #10182f;
    --surface-light: rgba(255, 255, 255, .72);
    --paper: #f6f8fc;
    --white: #fff;
    --ink: #0e1730;
    --text: #edf4ff;
    --muted: #8e9ab7;
    --muted-dark: #69738a;
    --line: rgba(152, 174, 224, .16);
    --line-dark: rgba(23, 39, 74, .12);
    --cyan: #65e7ff;
    --blue: #6897ff;
    --violet: #9e8cff;
    --mint: #79f2c0;
    --glow: 0 0 80px rgba(101, 231, 255, .13);
    --shadow: 0 24px 70px rgba(4, 10, 29, .18);
    --display: "Manrope", system-ui, sans-serif;
    --body: "DM Sans", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--body); line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); letter-spacing: -.04em; }
h1 em, h2 em { color: var(--cyan); font-style: normal; font-weight: inherit; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 300; top: 12px; left: 12px; padding: 10px 15px; transform: translateY(-160%); color: var(--bg); background: var(--cyan); border-radius: 10px; }
.skip-link:focus { transform: none; }
.section { padding: 110px clamp(22px, 6vw, 104px); }
.eyebrow { display: flex; gap: 10px; align-items: center; margin: 0 0 18px; color: #56647f; font: 700 11px/1 var(--display); letter-spacing: .13em; text-transform: uppercase; }
.eyebrow > span { width: 19px; height: 1px; background: var(--blue); box-shadow: 0 0 10px var(--blue); }
.eyebrow.light { color: rgba(222, 234, 255, .68); }
.eyebrow.light > span { background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 50px; padding: 13px 21px; border: 0; border-radius: 12px; font: 700 13px var(--display); cursor: pointer; transition: transform .25s, box-shadow .25s, background .25s, border-color .25s; }
.button:hover { transform: translateY(-2px); }
.button span { font-size: 17px; }
.button-accent { color: #07101f; background: linear-gradient(135deg, var(--cyan), #a7f4ff); box-shadow: 0 12px 30px rgba(101, 231, 255, .2); }
.button-accent:hover { box-shadow: 0 16px 38px rgba(101, 231, 255, .3); }
.button-ghost { color: var(--text); background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.14); backdrop-filter: blur(14px); }
.button-ghost:hover { background: rgba(255,255,255,.08); border-color: rgba(101,231,255,.35); }
.button-ink { color: var(--white); background: linear-gradient(135deg, #182545, #0d1630); box-shadow: 0 12px 28px rgba(14, 23, 48, .16); }
.arrow-link { display: inline-flex; align-items: center; gap: 12px; color: #314364; font: 700 13px var(--display); }
.arrow-link span { display: grid; width: 30px; height: 30px; place-items: center; color: #152547; background: rgba(104,151,255,.1); border: 1px solid rgba(104,151,255,.18); border-radius: 50%; transition: transform .2s; }
.arrow-link:hover span { transform: translateX(3px); }
.section-intro { max-width: 760px; margin-bottom: 54px; }
.section-intro h2, .section-heading-row h2 { margin-bottom: 18px; font-size: clamp(38px, 5vw, 65px); line-height: 1.04; }
.section-intro > p:last-child { max-width: 620px; color: var(--muted-dark); font-size: 17px; }
.section-heading-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; margin-bottom: 46px; }
.section-heading-row > div { max-width: 780px; }
.section-heading-row h2 { margin-bottom: 0; }

/* Navigation */
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 32px; padding: 6px clamp(22px, 5vw, 82px); color: #8d9ab8; background: #050812; border-bottom: 1px solid rgba(255,255,255,.05); font-size: 10px; letter-spacing: .04em; }
.topbar > span { color: var(--cyan); font-weight: 700; text-transform: uppercase; }
.topbar > div { display: flex; gap: 28px; }
.site-header { position: sticky; z-index: 100; top: 0; display: grid; grid-template-columns: 205px 1fr auto; align-items: center; gap: 28px; height: 78px; padding: 9px clamp(22px, 5vw, 82px); background: rgba(250, 252, 255, .84); border-bottom: 1px solid rgba(28, 48, 88, .08); backdrop-filter: blur(22px) saturate(150%); }
.brand img { width: 168px; height: 59px; object-fit: contain; }
.nav { display: flex; justify-content: center; gap: clamp(22px, 3vw, 43px); }
.nav a { position: relative; padding: 27px 0 24px; color: #52607b; font: 700 13px var(--display); }
.nav a::after { position: absolute; right: 30%; bottom: 17px; left: 30%; height: 2px; transform: scaleX(0); background: var(--blue); border-radius: 2px; box-shadow: 0 0 10px rgba(104,151,255,.6); content: ""; transition: transform .25s; }
.nav a:hover::after, .nav a.is-active::after { transform: scaleX(1); }
.nav-cta { display: inline-flex; align-items: center; gap: 11px; padding: 11px 16px; color: var(--white); background: #111b35; border: 1px solid rgba(255,255,255,.08); border-radius: 11px; box-shadow: 0 10px 25px rgba(7,14,33,.12); font: 700 12px var(--display); }
.nav-cta span { color: var(--cyan); font-size: 16px; }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 10px; background: rgba(255,255,255,.7); border: 1px solid var(--line-dark); border-radius: 11px; }
.menu-toggle > span:not(.sr-only) { display: block; height: 2px; margin: 5px 0; background: var(--ink); border-radius: 2px; }
.messages { position: relative; z-index: 20; padding: 12px clamp(22px,6vw,100px); color: #071223; background: var(--cyan); text-align: center; font-weight: 700; }
.messages p { margin: 0; }

/* Intelligent network hero */
.home-hero, .catalog-hero, .inner-hero, .corporate-page-hero, .detail-hero, .contact-page { position: relative; isolation: isolate; overflow: hidden; color: var(--text); background:
    radial-gradient(circle at 73% 22%, rgba(96, 123, 255, .20), transparent 25%),
    radial-gradient(circle at 15% 78%, rgba(82, 223, 255, .10), transparent 28%),
    linear-gradient(145deg, #080c1b 0%, #0b1227 52%, #070b17 100%); }
.home-hero::before, .catalog-hero::before, .inner-hero::before, .corporate-page-hero::before, .detail-hero::before, .contact-page::before { position: absolute; z-index: -1; inset: 0; opacity: .24; background-image: radial-gradient(circle, rgba(151,205,255,.75) 1px, transparent 1.5px); background-size: 42px 42px; mask-image: linear-gradient(100deg, rgba(0,0,0,.85), transparent 75%); content: ""; }
.home-hero::after, .catalog-hero::after, .inner-hero::after, .corporate-page-hero::after, .detail-hero::after { position: absolute; z-index: -1; width: 580px; height: 580px; right: -210px; top: -240px; border: 1px solid rgba(130,190,255,.12); border-radius: 50%; box-shadow: 0 0 0 90px rgba(117,139,255,.035), 0 0 0 180px rgba(117,139,255,.02); content: ""; }
.home-hero { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(400px,.98fr); gap: clamp(35px, 6vw, 92px); align-items: center; min-height: 760px; padding: 82px clamp(22px, 6vw, 104px) 78px; }
.hero-orbit { position: absolute; z-index: -1; width: 540px; height: 540px; left: -330px; bottom: -330px; border: 1px solid rgba(101,231,255,.12); border-radius: 50%; box-shadow: 0 0 100px rgba(101,231,255,.08); }
.home-hero h1 { max-width: 760px; margin-bottom: 26px; font-size: clamp(54px, 7vw, 98px); line-height: .95; }
.hero-text { max-width: 650px; margin: 0; color: #9caac7; font-size: clamp(17px,1.5vw,20px); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.hero-facts { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; max-width: 680px; margin-top: 46px; }
.hero-facts div { padding: 15px 17px; background: rgba(255,255,255,.035); border: 1px solid rgba(159,189,255,.1); border-radius: 14px; backdrop-filter: blur(12px); }
.hero-facts strong { display: block; color: var(--cyan); font: 700 24px var(--display); text-shadow: 0 0 18px rgba(101,231,255,.25); }
.hero-facts span { display: block; margin-top: 3px; color: #8491ad; font-size: 11px; line-height: 1.35; }
.hero-visual { position: relative; }
.hero-image-wrap { position: relative; display: grid; align-items: end; min-height: 540px; margin: 10px; overflow: hidden; background: linear-gradient(145deg, rgba(35,48,92,.7), rgba(18,30,64,.34)); border: 1px solid rgba(158,191,255,.2); border-radius: 34px; box-shadow: inset 0 1px rgba(255,255,255,.08), 0 35px 90px rgba(0,0,0,.3), var(--glow); backdrop-filter: blur(22px); }
.hero-image-wrap::before { position: absolute; width: 390px; height: 390px; top: 65px; left: 50%; transform: translateX(-50%); background: radial-gradient(circle, rgba(101,231,255,.16), rgba(117,113,255,.08) 50%, transparent 68%); border: 1px solid rgba(101,231,255,.18); border-radius: 50%; box-shadow: 0 0 0 38px rgba(101,231,255,.025), 0 0 70px rgba(101,231,255,.12); content: ""; animation: breathe 5s ease-in-out infinite; }
.hero-image-wrap::after { position: absolute; inset: 0; opacity: .35; background: linear-gradient(rgba(130,180,255,.15) 1px, transparent 1px), linear-gradient(90deg, rgba(130,180,255,.15) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(transparent, #000); content: ""; }
.hero-image-wrap > img { position: relative; z-index: 2; width: 100%; max-height: 530px; object-fit: contain; object-position: bottom; filter: saturate(.83) drop-shadow(0 25px 35px rgba(0,0,0,.3)); }
.visual-code, .visual-card, .hero-stamp { position: absolute; z-index: 4; color: var(--text); background: rgba(11,18,39,.72); border: 1px solid rgba(166,201,255,.18); box-shadow: 0 18px 50px rgba(0,0,0,.25); backdrop-filter: blur(18px); }
.visual-code { top: 28px; right: -15px; display: flex; align-items: center; gap: 5px; padding: 12px 14px; border-radius: 12px; font-size: 10px; animation: float 5.5s ease-in-out infinite; }
.visual-code span { width: 5px; height: 5px; background: var(--cyan); border-radius: 50%; box-shadow: 0 0 8px var(--cyan); }.visual-code span:nth-child(2) { opacity: .6; }.visual-code span:nth-child(3) { opacity: .3; }.visual-code b { margin-left: 6px; }
.visual-card { right: -12px; bottom: 55px; display: flex; align-items: center; gap: 12px; min-width: 190px; padding: 14px 16px; border-radius: 13px; animation: float 6s ease-in-out 1.2s infinite; }
.visual-card small, .visual-card strong { display: block; }.visual-card small { color: var(--muted); font-size: 9px; }.visual-card strong { font: 700 12px var(--display); }
.pulse { width: 9px; height: 9px; background: var(--cyan); border-radius: 50%; box-shadow: 0 0 0 6px rgba(101,231,255,.1), 0 0 18px rgba(101,231,255,.6); }
.hero-stamp { left: -24px; bottom: 105px; display: grid; width: 82px; height: 82px; place-content: center; border-radius: 50%; text-align: center; animation: float 7s ease-in-out .5s infinite; }.hero-stamp span { color: var(--muted); font-size: 9px; text-transform: uppercase; }.hero-stamp strong { color: var(--cyan); font: 700 16px var(--display); }
@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes breathe { 0%,100% { transform: translateX(-50%) scale(.96); opacity: .7; } 50% { transform: translateX(-50%) scale(1.03); opacity: 1; } }

/* Hero learning intelligence map */
.hero-visual[data-intelligence-map] { --map-shift-x: 0px; --map-shift-y: 0px; min-width: 0; }
.intelligence-map { position: relative; min-height: 570px; overflow: hidden; background: linear-gradient(145deg, rgba(17, 28, 59, .68), rgba(8, 16, 36, .46)); border: 1px solid rgba(158, 198, 255, .17); border-radius: 34px; box-shadow: inset 0 1px rgba(255,255,255,.06), 0 38px 95px rgba(0,0,0,.32), 0 0 100px rgba(101,231,255,.07); backdrop-filter: blur(24px); transition: transform .5s cubic-bezier(.2,.7,.2,1); }
.hero-visual[data-intelligence-map]:hover .intelligence-map { transform: translate3d(var(--map-shift-x), var(--map-shift-y), 0); }
.intelligence-map::before { position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(139,184,255,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(139,184,255,.18) 1px, transparent 1px); background-size: 46px 46px; mask-image: radial-gradient(circle at 50% 50%, #000, transparent 74%); content: ""; }
.intelligence-map::after { position: absolute; inset: 0; background: linear-gradient(105deg, transparent 35%, rgba(101,231,255,.06) 49%, transparent 63%); transform: translateX(-120%); animation: mapScan 9s ease-in-out infinite; content: ""; pointer-events: none; }
.map-glow { position: absolute; z-index: 0; width: 340px; height: 340px; top: 50%; left: 50%; transform: translate(-50%,-50%); background: radial-gradient(circle, rgba(102,225,255,.16), rgba(113,104,255,.08) 40%, transparent 70%); border-radius: 50%; filter: blur(2px); animation: coreGlow 5.5s ease-in-out infinite; }
.network-graph { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; }
.orbit { fill: none; stroke: rgba(137,180,255,.12); stroke-width: 1; stroke-dasharray: 4 9; transform-origin: 310px 310px; }
.orbit-one { animation: orbitSpin 42s linear infinite; }.orbit-two { stroke: rgba(101,231,255,.11); stroke-dasharray: 2 12; animation: orbitSpin 30s linear reverse infinite; }
.signal-line { fill: none; stroke: url(#signal-gradient); stroke-width: 1.25; stroke-linecap: round; stroke-dasharray: 5 10; opacity: .48; animation: signalFlow 6s linear infinite; }
.line-two { animation-delay: -1.1s; }.line-three { animation-delay: -2.2s; }.line-four { animation-delay: -3.3s; }.line-five { animation-delay: -4.4s; }
.graph-node { fill: #0c1730; stroke: var(--cyan); stroke-width: 2; filter: url(#node-glow); }
.node-b,.node-d { stroke: var(--violet); }.node-e { fill: var(--cyan); }
.signal-pulse { fill: none; stroke: rgba(101,231,255,.34); stroke-width: 1; transform-box: fill-box; transform-origin: center; animation: nodePulse 3s ease-out infinite; }.pulse-two { animation-delay: 1.5s; }
.learning-core { position: absolute; z-index: 3; top: 50%; left: 50%; display: grid; width: 174px; height: 174px; place-content: center; transform: translate(-50%,-50%); color: var(--text); background: radial-gradient(circle at 35% 28%, rgba(42,67,126,.96), rgba(10,20,44,.94) 70%); border: 1px solid rgba(101,231,255,.24); border-radius: 50%; box-shadow: inset 0 1px rgba(255,255,255,.12), 0 0 0 14px rgba(101,231,255,.025), 0 0 55px rgba(101,231,255,.16); text-align: center; }
.learning-core::before { position: absolute; inset: 11px; border: 1px solid rgba(165,204,255,.12); border-radius: 50%; content: ""; }
.core-ring { position: absolute; inset: -20px; border: 1px solid rgba(101,231,255,.15); border-top-color: rgba(101,231,255,.58); border-radius: 50%; animation: orbitSpin 12s linear infinite; }
.learning-core small { color: #8394b3; font: 700 8px var(--display); letter-spacing: .11em; text-transform: uppercase; }
.learning-core strong { display: block; margin: 1px 0; color: var(--cyan); font: 700 56px/.95 var(--display); text-shadow: 0 0 26px rgba(101,231,255,.3); }
.learning-core p { margin: 4px 0 0; color: #98a7c4; font-size: 8px; letter-spacing: .03em; }
.map-label,.map-status { position: absolute; z-index: 4; color: var(--text); background: rgba(9,18,40,.68); border: 1px solid rgba(155,196,255,.15); border-radius: 13px; box-shadow: 0 18px 45px rgba(0,0,0,.24); backdrop-filter: blur(16px); }
.map-label { display: grid; grid-template-columns: 8px 1fr; column-gap: 9px; min-width: 148px; padding: 12px 14px; animation: float 7s ease-in-out infinite; }
.map-label i { grid-row: span 2; align-self: center; width: 7px; height: 7px; background: var(--cyan); border-radius: 50%; box-shadow: 0 0 13px rgba(101,231,255,.75); }
.map-label span,.map-label strong { display: block; }.map-label span { color: #7486a8; font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }.map-label strong { margin-top: 1px; font: 700 10px var(--display); }
.map-label-ai { top: 19%; left: 2%; }.map-label-code { top: 13%; right: 2%; animation-delay: -2.3s; }.map-label-data { right: 3%; bottom: 15%; animation-delay: -4.2s; }.map-label-code i { background: var(--violet); box-shadow: 0 0 13px rgba(158,140,255,.7); }
.map-status { left: 4%; bottom: 6%; display: flex; align-items: center; gap: 11px; padding: 12px 14px; animation: float 6.5s ease-in-out -1.3s infinite; }.map-status small,.map-status strong { display: block; }.map-status small { color:#7182a4;font-size:8px; }.map-status strong { font:700 10px var(--display); }
@keyframes mapScan { 0%,25% { transform:translateX(-120%);opacity:0; } 45%,55% { opacity:1; } 78%,100% { transform:translateX(120%);opacity:0; } }
@keyframes coreGlow { 0%,100% { opacity:.68;transform:translate(-50%,-50%) scale(.94); } 50% { opacity:1;transform:translate(-50%,-50%) scale(1.06); } }
@keyframes orbitSpin { to { transform:rotate(360deg); } }
@keyframes signalFlow { to { stroke-dashoffset:-60; } }
@keyframes nodePulse { 0% { transform:scale(.5);opacity:.9; } 75%,100% { transform:scale(1.8);opacity:0; } }
.signal-strip { display: flex; align-items: center; justify-content: center; gap: clamp(20px,3.5vw,55px); min-height: 68px; padding: 16px 24px; overflow: hidden; color: #72809c; background: rgba(250,252,255,.92); border-bottom: 1px solid var(--line-dark); font: 700 10px var(--display); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.signal-strip i { width: 5px; height: 5px; flex: 0 0 5px; background: var(--blue); border-radius: 50%; box-shadow: 0 0 9px var(--blue); }

/* Paths and program cards */
.path-section { background: linear-gradient(180deg, #f6f8fc, #edf2fa); }
.path-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; }
.path-card { position: relative; display: flex; flex-direction: column; min-height: 355px; padding: 27px; overflow: hidden; background: rgba(255,255,255,.7); border: 1px solid rgba(37,58,102,.1); border-radius: 22px; box-shadow: 0 10px 35px rgba(30,50,90,.05); backdrop-filter: blur(16px); transition: transform .3s, box-shadow .3s, border-color .3s; }
.path-card::after { position: absolute; width: 140px; height: 140px; right: -65px; bottom: -65px; background: radial-gradient(circle, rgba(104,151,255,.14), transparent 68%); border-radius: 50%; content: ""; }
.path-card:hover { transform: translateY(-7px); border-color: rgba(104,151,255,.25); box-shadow: 0 28px 65px rgba(21,40,82,.11); }
.path-dark { color: var(--text); background: linear-gradient(145deg, rgba(15,25,53,.96), rgba(9,15,34,.96)); border-color: rgba(160,190,255,.13); }.path-coral { background: linear-gradient(145deg, rgba(236,243,255,.92), rgba(225,233,252,.72)); }.path-lime { background: linear-gradient(145deg, rgba(242,238,255,.9), rgba(228,225,252,.7)); }.path-paper { background: rgba(255,255,255,.72); }
.path-number { position: absolute; top: 22px; right: 24px; color: var(--muted); font: 700 10px var(--display); }
.path-icon { display: grid; width: 62px; height: 62px; margin-bottom: auto; place-items: center; color: var(--blue); background: rgba(104,151,255,.08); border: 1px solid rgba(104,151,255,.18); border-radius: 18px; font: 700 20px var(--display); box-shadow: inset 0 1px rgba(255,255,255,.4); }
.path-dark .path-icon { color: var(--cyan); background: rgba(101,231,255,.08); border-color: rgba(101,231,255,.17); }.path-dark .path-number { color: #71809d; }
.path-card p { margin: 26px 0 5px; color: #748099; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }.path-dark p { color: #7786a4; }
.path-card h3 { margin-bottom: 28px; font-size: 27px; line-height: 1.08; }
.path-link { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding-top: 16px; color: #53627e; border-top: 1px solid rgba(42,62,102,.12); font-size: 12px; font-weight: 700; }.path-dark .path-link { color: #a6b3ce; border-color: rgba(255,255,255,.1); }.path-link b { color: var(--blue); font-size: 18px; }
.featured-section { background: #f9fbfe; }
.featured-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 19px; }
.course-tile, .catalog-card { overflow: hidden; background: rgba(255,255,255,.76); border: 1px solid rgba(31,54,99,.1); border-radius: 22px; box-shadow: 0 12px 35px rgba(21,41,83,.055); backdrop-filter: blur(14px); transition: transform .3s, box-shadow .3s, border-color .3s; }
.course-tile:hover, .catalog-card:hover { transform: translateY(-6px); border-color: rgba(104,151,255,.22); box-shadow: 0 28px 68px rgba(20,42,86,.12); }
.course-cover { position: relative; display: grid; min-height: 220px; place-items: center; overflow: hidden; background: linear-gradient(145deg, #111b38, #172951); }
.course-cover::before { position: absolute; width: 180px; height: 180px; background: radial-gradient(circle, rgba(101,231,255,.13), transparent 68%); border: 1px solid rgba(101,231,255,.14); border-radius: 50%; box-shadow: 0 0 0 35px rgba(101,231,255,.025); content: ""; }
.course-cover::after { position: absolute; inset: 0; opacity: .18; background-image: radial-gradient(circle, rgba(173,218,255,.8) 1px, transparent 1.5px); background-size: 30px 30px; mask-image: linear-gradient(110deg,#000,transparent); content: ""; }
.course-cover img { position: relative; z-index: 2; width: 180px; height: 150px; object-fit: contain; filter: saturate(.78) drop-shadow(0 18px 28px rgba(0,0,0,.28)); }
.course-index { position: absolute; z-index: 3; top: 16px; left: 18px; color: #7f90b0; font: 700 10px var(--display); }
.course-level { position: absolute; z-index: 3; top: 14px; right: 14px; padding: 6px 10px; color: var(--cyan); background: rgba(9,17,37,.65); border: 1px solid rgba(101,231,255,.16); border-radius: 999px; backdrop-filter: blur(10px); font: 700 9px var(--display); letter-spacing: .05em; text-transform: uppercase; }
.course-tile-body, .catalog-card-body { padding: 23px; }
.course-category { margin-bottom: 10px; color: #607bb1; font: 700 9px var(--display); letter-spacing: .11em; text-transform: uppercase; }
.course-tile h3 { min-height: 55px; margin-bottom: 14px; font-size: 20px; line-height: 1.3; }.course-tile h3 a:hover, .catalog-card h3 a:hover { color: #506fbd; }
.course-stats, .catalog-meta { display: flex; flex-wrap: wrap; gap: 6px 13px; color: #7a859b; font-size: 10px; }.course-stats span:not(:first-child)::before, .catalog-meta span:not(:first-child)::before { margin-right: 13px; color: var(--blue); content: "·"; }
.course-price-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-top: 22px; padding-top: 17px; border-top: 1px solid var(--line-dark); }.course-price-row strong { font: 700 20px var(--display); }.course-price-row > a { display: grid; width: 36px; height: 36px; place-items: center; color: var(--white); background: linear-gradient(145deg,#1b2b50,#101a35); border-radius: 11px; font-size: 16px; box-shadow: 0 8px 20px rgba(15,28,58,.14); }

/* Method, audiences and CTA */
.method-section { display: grid; grid-template-columns: 1fr 1fr; min-height: 760px; color: var(--text); background: linear-gradient(140deg,#080d1c,#0d1730); }
.method-visual { position: relative; display: grid; place-items: center; padding: 75px; overflow: hidden; background: radial-gradient(circle at 50% 45%, rgba(109,131,255,.18), transparent 36%); }
.method-visual::before { position: absolute; width: 540px; height: 540px; border: 1px solid rgba(101,231,255,.13); border-radius: 50%; box-shadow: 0 0 0 55px rgba(101,231,255,.025), 0 0 90px rgba(101,231,255,.06); content: ""; }
.method-photo { position: relative; z-index: 2; display: grid; width: min(94%,480px); min-height: 480px; place-items: center; overflow: hidden; background: rgba(255,255,255,.05); border: 1px solid rgba(160,194,255,.16); border-radius: 32px; box-shadow: 0 35px 80px rgba(0,0,0,.3); backdrop-filter: blur(18px); }.method-photo img { width: 84%; max-height: 420px; object-fit: contain; filter: saturate(.78); }
.method-note { position: absolute; z-index: 3; right: 8%; bottom: 12%; padding: 15px 18px; color: var(--text); background: rgba(15,25,53,.72); border: 1px solid rgba(101,231,255,.18); border-radius: 13px; box-shadow: 0 20px 45px rgba(0,0,0,.2); backdrop-filter: blur(16px); animation: float 6.5s ease-in-out infinite; }.method-note b,.method-note span { display: block; }.method-note b { color: var(--cyan); font: 700 12px var(--display); }.method-note span { color: var(--muted); font-size: 10px; }
.method-copy { padding: 95px clamp(35px,6vw,90px); }.method-copy > h2 { margin-bottom: 22px; font-size: clamp(42px,5vw,70px); line-height: 1.02; }.method-copy > p { max-width: 580px; color: #93a0bb; font-size: 17px; }
.method-list { margin: 42px 0 0; padding: 0; list-style: none; }.method-list li { display: grid; grid-template-columns: 42px 1fr; gap: 15px; padding: 19px 0; border-top: 1px solid rgba(173,199,255,.11); }.method-list li > span { color: var(--cyan); font: 700 10px var(--display); }.method-list h3 { margin: 0 0 4px; font-size: 18px; }.method-list p { margin: 0; color: #7c8aa8; font-size: 13px; }
.audience-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px,8vw,130px); align-items: start; background: linear-gradient(180deg,#f4f7fc,#eef3fa); }.audience-copy h2 { margin-bottom: 22px; font-size: clamp(40px,5vw,65px); line-height: 1.04; }.audience-copy > p:not(.eyebrow) { color: var(--muted-dark); font-size: 17px; }.audience-copy .button { margin-top: 18px; }
.audience-list { display: grid; gap: 11px; }.audience-list a { display: grid; grid-template-columns: 38px 1fr 30px; gap: 17px; align-items: start; padding: 23px; background: rgba(255,255,255,.7); border: 1px solid rgba(37,59,101,.1); border-radius: 17px; box-shadow: 0 8px 25px rgba(24,45,86,.04); transition: transform .25s,box-shadow .25s; }.audience-list a:hover { transform: translateX(5px); box-shadow: 0 18px 38px rgba(24,45,86,.08); }.audience-list > a > span { color: #6983b8; font: 700 10px var(--display); }.audience-list h3 { margin-bottom: 4px; font-size: 21px; }.audience-list p { margin: 0; color: var(--muted-dark); font-size: 13px; }.audience-list b { color: var(--blue); font-size: 19px; }
.cta-section { position: relative; isolation: isolate; display: grid; grid-template-columns: 1fr .45fr; gap: 70px; align-items: end; min-height: 420px; padding: 90px clamp(22px,8vw,130px); overflow: hidden; color: var(--text); background: radial-gradient(circle at 70% 30%, rgba(101,231,255,.12), transparent 25%), linear-gradient(145deg,#080d1d,#0d1731); }.cta-section::before { position: absolute; z-index: -1; inset: 0; opacity: .2; background-image: radial-gradient(circle,rgba(158,211,255,.7) 1px,transparent 1.5px); background-size: 40px 40px; mask-image: linear-gradient(90deg,#000,transparent); content: ""; }.cta-section h2 { max-width: 800px; margin-bottom: 15px; font-size: clamp(42px,6vw,74px); line-height: 1.02; }.cta-section p:not(.eyebrow) { max-width: 610px; color: #8f9db9; font-size: 16px; }.cta-mark { position: absolute; z-index: -1; right: 29%; bottom: -140px; color: transparent; font: 700 410px/1 var(--display); -webkit-text-stroke: 1px rgba(135,180,255,.055); transform: rotate(-10deg); }.cta-actions { display: grid; justify-items: start; gap: 22px; }.cta-actions > a:not(.button) { color: #8d9bb8; font-size: 12px; }

/* Catalog */
.catalog-hero,.inner-hero { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; align-items: end; min-height: 410px; padding: 78px clamp(22px,6vw,104px); }.catalog-hero h1,.inner-hero h1 { margin-bottom: 0; font-size: clamp(52px,7vw,90px); line-height: .98; }.catalog-hero > p { max-width: 500px; margin-bottom: 8px; color: #95a2bd; font-size: 18px; }
.catalog-shell { display: grid; grid-template-columns: 250px 1fr; gap: clamp(34px,5vw,70px); padding: 68px clamp(22px,6vw,104px) 105px; background: linear-gradient(180deg,#f7f9fd,#f1f5fa); }.catalog-sidebar { align-self: start; position: sticky; top: 108px; }.filter-heading { display: flex; justify-content: space-between; padding-bottom: 14px; border-bottom: 1px solid #cdd6e6; font: 700 12px var(--display); }.filter-heading a { color: #607fc2; font-size: 10px; }.category-filter { display: grid; }.category-filter a { display: flex; justify-content: space-between; gap: 15px; padding: 13px 0; color: #6e7a91; border-bottom: 1px solid #e1e6ef; font-size: 12px; }.category-filter a:hover,.category-filter a.is-active { color: #4567ae; font-weight: 700; }.category-filter b { color: #8b97ab; font-size: 10px; }
.sidebar-help { margin-top: 28px; padding: 21px; color: var(--text); background: linear-gradient(145deg,rgba(20,33,68,.97),rgba(11,20,43,.97)); border: 1px solid rgba(145,184,255,.14); border-radius: 18px; box-shadow: 0 20px 45px rgba(15,32,68,.14); }.sidebar-help span { color: var(--cyan); font: 700 10px var(--display); text-transform: uppercase; }.sidebar-help p { margin: 12px 0 16px; color: #8f9db9; font-size: 12px; }.sidebar-help a { font: 700 11px var(--display); }
.catalog-search { display: grid; grid-template-columns: 1fr auto; gap: 11px; }.search-field { position: relative; display: block; }.search-field b { position: absolute; top: 11px; left: 17px; color: #7283a3; font: 400 24px var(--body); }.search-field input { width: 100%; height: 50px; padding: 11px 18px 11px 49px; color: var(--ink); background: rgba(255,255,255,.75); border: 1px solid rgba(40,66,115,.12); border-radius: 13px; outline: 0; box-shadow: 0 8px 24px rgba(24,45,90,.035); }.search-field input:focus { border-color: rgba(104,151,255,.55); box-shadow: 0 0 0 4px rgba(104,151,255,.08); }
.result-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin: 38px 0 24px; padding-bottom: 17px; border-bottom: 1px solid #dce3ee; }.result-heading h2 { margin: 0; font-size: 27px; }.result-heading p { margin: 3px 0 0; color: #8590a5; font-size: 11px; }.result-heading > span { color: #8590a5; font-size: 10px; }
.catalog-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }.catalog-card-visual { position: relative; display: grid; min-height: 180px; place-items: center; overflow: hidden; background: linear-gradient(145deg,#121e3d,#172b55); }.catalog-card-visual::before { position: absolute; width: 160px; height: 160px; background: radial-gradient(circle,rgba(101,231,255,.12),transparent 67%); border: 1px solid rgba(101,231,255,.13); border-radius: 50%; box-shadow: 0 0 0 32px rgba(101,231,255,.02); content: ""; }.catalog-card-visual::after { position: absolute; inset: 0; opacity: .2; background-image: radial-gradient(circle,rgba(160,213,255,.8) 1px,transparent 1.4px); background-size: 27px 27px; mask-image: linear-gradient(100deg,#000,transparent); content: ""; }.catalog-icon { position: relative; z-index: 2; color: var(--cyan); font: 600 43px var(--display); text-shadow: 0 0 25px rgba(101,231,255,.25); }.visual-arrow { position: absolute; z-index: 3; right: 17px; bottom: 14px; color: #9faed0; font-size: 19px; }.catalog-card h3 { min-height: 54px; margin-bottom: 10px; font-size: 20px; line-height: 1.28; }.catalog-card-body > p:not(.course-category) { min-height: 61px; color: var(--muted-dark); font-size: 12px; }.catalog-card .course-price-row small,.catalog-card .course-price-row strong { display:block; }.catalog-card .course-price-row small { color:#8893a8;font-size:8px;text-transform:uppercase; }.catalog-card .course-price-row > a { display:inline-flex;width:auto;height:auto;gap:7px;color:#506896;background:transparent;box-shadow:none;font:700 11px var(--display); }
.empty-state { grid-column: 1/-1; padding: 75px 30px; background: rgba(255,255,255,.65); border: 1px solid var(--line-dark); border-radius: 20px; text-align:center; }.empty-state > span { color: var(--blue); font-size:42px; }.empty-state h2 { margin:10px 0; }.empty-state p { color:var(--muted-dark); }.empty-state .button { margin-top:14px; }
.catalog-cta { display:grid;grid-template-columns:1fr .8fr auto;gap:50px;align-items:center;padding:70px clamp(22px,6vw,104px);color:var(--text);background:radial-gradient(circle at 20% 20%,rgba(101,231,255,.1),transparent 25%),linear-gradient(145deg,#0b1124,#111c39); }.catalog-cta h2 { margin:0;font-size:clamp(34px,4vw,52px); }.catalog-cta > p { margin:0;color:#8f9db9; }

/* Course detail */
.detail-hero { padding:30px clamp(22px,6vw,104px) 0; }.detail-breadcrumb { display:flex;gap:10px;color:#7887a5;font-size:11px; }.detail-breadcrumb a:hover { color:var(--cyan); }.detail-hero-grid { display:grid;grid-template-columns:1fr .55fr;gap:clamp(45px,7vw,110px);align-items:center;min-height:500px; }.detail-badges { display:flex;gap:8px;margin-bottom:21px; }.detail-badges span { padding:6px 10px;color:var(--cyan);background:rgba(101,231,255,.07);border:1px solid rgba(101,231,255,.16);border-radius:999px;font:700 9px var(--display);letter-spacing:.05em;text-transform:uppercase; }.detail-badges span+span { color:#a8b5ce;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1); }.detail-hero h1 { max-width:920px;margin-bottom:22px;font-size:clamp(44px,6vw,78px);line-height:1; }.detail-hero-copy > p { max-width:730px;color:#97a4bf;font-size:18px; }.detail-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:31px; }
.detail-art { position:relative;display:grid;min-height:345px;place-items:center;overflow:hidden;background:rgba(20,32,67,.54);border:1px solid rgba(154,190,255,.17);border-radius:27px;box-shadow:inset 0 1px rgba(255,255,255,.06),0 30px 75px rgba(0,0,0,.27),var(--glow);backdrop-filter:blur(20px); }.detail-art-grid { position:absolute;inset:0;opacity:.25;background-image:radial-gradient(circle,rgba(155,215,255,.8) 1px,transparent 1.4px);background-size:30px 30px;mask-image:radial-gradient(circle,#000,transparent 70%); }.detail-symbol { position:relative;color:var(--cyan);font:600 82px var(--display);text-shadow:0 0 32px rgba(101,231,255,.28);animation:float 6s ease-in-out infinite; }.detail-art-label { position:absolute;right:16px;bottom:16px;left:16px;padding:14px 16px;color:var(--text);background:rgba(8,15,32,.68);border:1px solid rgba(159,195,255,.15);border-radius:13px;backdrop-filter:blur(15px); }.detail-art-label small,.detail-art-label strong { display:block; }.detail-art-label small { color:#7383a3;font-size:8px;text-transform:uppercase; }.detail-art-label strong { margin-top:3px;font:700 12px var(--display); }
.detail-facts { display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.025);border:1px solid rgba(155,188,255,.1);border-bottom:0;border-radius:16px 16px 0 0;backdrop-filter:blur(12px); }.detail-facts div { padding:20px 18px;border-right:1px solid rgba(155,188,255,.09); }.detail-facts small,.detail-facts strong { display:block; }.detail-facts small { color:#6f7f9e;font-size:8px;letter-spacing:.07em;text-transform:uppercase; }.detail-facts strong { margin-top:4px;font:600 13px var(--display); }
.detail-layout { display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:58px;padding:88px clamp(22px,6vw,104px) 108px;background:linear-gradient(180deg,#f7f9fd,#f1f5fa); }.detail-section { padding:62px 0;border-bottom:1px solid #dfe6f0; }.detail-section:first-child { padding-top:0; }.detail-section h2 { margin-bottom:22px;font-size:clamp(34px,4vw,53px);line-height:1.06; }.detail-overview .lead { max-width:820px;color:var(--muted-dark);font-size:17px; }.outcomes-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-top:33px; }.outcomes-grid div { display:grid;grid-template-columns:31px 1fr;gap:12px;padding:18px;background:rgba(255,255,255,.68);border:1px solid rgba(37,59,102,.08);border-radius:14px;box-shadow:0 7px 22px rgba(30,50,88,.035); }.outcomes-grid span { color:#6685c1;font:700 9px var(--display); }.outcomes-grid p { margin:0;font-weight:600; }
.detail-section-heading { display:grid;grid-template-columns:1fr 245px;gap:38px;align-items:end;margin-bottom:29px; }.detail-section-heading h2 { margin-bottom:0; }.detail-section-heading > p { margin-bottom:7px;color:var(--muted-dark);font-size:12px; }.curriculum-list { display:grid;gap:9px; }.curriculum-module { background:rgba(255,255,255,.68);border:1px solid rgba(37,59,102,.09);border-radius:14px;box-shadow:0 7px 22px rgba(30,50,88,.03); }.curriculum-module summary { display:grid;grid-template-columns:96px 1fr 30px;gap:14px;align-items:center;padding:20px;cursor:pointer;list-style:none; }.curriculum-module summary::-webkit-details-marker { display:none; }.curriculum-module summary span { color:#6380b8;font:700 9px var(--display);text-transform:uppercase; }.curriculum-module h3 { margin:0;font-size:18px; }.curriculum-module summary b { color:#6780b1;font-size:23px;font-weight:400;transition:transform .2s; }.curriculum-module[open] summary b { transform:rotate(45deg); }.module-topics { display:flex;flex-wrap:wrap;gap:7px;padding:0 20px 20px 130px; }.module-topics span { padding:7px 10px;color:#69768e;background:#eef3f9;border-radius:8px;font-size:11px; }
.project-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.project-grid article { position:relative;padding:19px;color:var(--text);background:linear-gradient(145deg,#111d3b,#0b142b);border:1px solid rgba(155,192,255,.12);border-radius:16px;box-shadow:0 18px 40px rgba(13,29,62,.12); }.project-grid article > span { color:var(--cyan);font:700 9px var(--display); }.project-window { display:flex;gap:4px;margin:22px 0;padding:8px;background:rgba(255,255,255,.04);border-radius:7px; }.project-window i { width:4px;height:4px;background:var(--cyan);border-radius:50%;box-shadow:0 0 5px var(--cyan); }.project-grid h3 { margin-bottom:11px;font-size:16px; }.project-grid p { margin:0;color:#7e8ca8;font-size:11px; }
.tool-cloud { display:flex;flex-wrap:wrap;gap:9px; }.tool-cloud span { padding:11px 14px;background:rgba(255,255,255,.7);border:1px solid rgba(37,59,102,.09);border-radius:10px;box-shadow:0 6px 18px rgba(26,48,89,.03);font:600 12px var(--display); }.fit-section { display:grid;grid-template-columns:1fr 1fr;gap:52px; }.fit-section h2 { font-size:29px; }.clean-list { display:grid;gap:12px;padding:0;list-style:none; }.clean-list li { display:flex;gap:11px;color:var(--muted-dark); }.clean-list li span { display:grid;width:20px;height:20px;flex:0 0 20px;place-items:center;color:#0a2030;background:rgba(101,231,255,.3);border:1px solid rgba(53,178,207,.2);border-radius:50%;font-size:10px; }
.certificate-strip { display:grid;grid-template-columns:86px 1fr;gap:25px;align-items:center;margin-top:62px;padding:32px;color:var(--text);background:linear-gradient(145deg,#101d3c,#0b142c);border:1px solid rgba(147,187,255,.13);border-radius:20px;box-shadow:0 24px 55px rgba(14,31,65,.14); }.certificate-icon { display:grid;width:76px;height:76px;place-items:center;color:var(--cyan);background:rgba(101,231,255,.06);border:1px solid rgba(101,231,255,.18);border-radius:50%;box-shadow:0 0 28px rgba(101,231,255,.08);font:700 32px var(--display); }.certificate-strip h2 { margin-bottom:7px;font-size:23px; }.certificate-strip p:last-child { margin:0;color:#8795b1;font-size:12px; }
.enrol-card { position:sticky;top:108px;overflow:hidden;background:rgba(255,255,255,.8);border:1px solid rgba(38,61,105,.1);border-radius:20px;box-shadow:0 26px 65px rgba(20,41,84,.13);backdrop-filter:blur(18px); }.enrol-card-head { padding:24px;color:var(--text);background:linear-gradient(145deg,#101d3c,#0b142d); }.enrol-card-head p { margin-bottom:8px;color:var(--cyan);font:700 9px var(--display);text-transform:uppercase; }.enrol-card-head h2 { margin-bottom:6px;font-size:25px; }.enrol-card-head span { color:#8492ae;font-size:11px; }.enrol-card .enquiry-form { padding:22px; }.enrol-contact { display:flex;justify-content:space-between;gap:10px;padding:14px 22px;background:rgba(235,241,249,.8);font-size:10px; }.enrol-contact a { color:#5573af;font-weight:700; }
.related-section { background:#edf2f8; }.related-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:13px; }.related-grid > a { padding:23px;background:rgba(255,255,255,.72);border:1px solid rgba(36,58,102,.09);border-radius:17px;box-shadow:0 9px 27px rgba(29,50,89,.04);transition:transform .25s,box-shadow .25s; }.related-grid > a:hover { transform:translateY(-4px);box-shadow:0 20px 42px rgba(29,50,89,.08); }.related-grid > a > span { color:#6381bb;font:700 9px var(--display);text-transform:uppercase; }.related-grid h3 { min-height:57px;margin:14px 0 20px;font-size:20px; }.related-grid div { display:flex;justify-content:space-between;padding-top:13px;border-top:1px solid var(--line-dark); }.related-grid b { font-size:11px; }.related-grid i { color:var(--blue);font-size:18px;font-style:normal; }

/* Forms */
.enquiry-form { display:grid;gap:13px; }.form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }.form-compact .form-grid { grid-template-columns:1fr; }.field-wrap { display:grid;gap:6px;color:#3e4d69;font:700 9px var(--display);letter-spacing:.05em;text-transform:uppercase; }.field-wrap > span { display:flex;justify-content:space-between; }.field-wrap small { color:#9099aa;font-weight:500; }.field { width:100%;min-height:46px;padding:10px 12px;color:var(--ink);background:rgba(245,248,252,.9);border:1px solid rgba(39,64,111,.11);border-radius:10px;outline:none;text-transform:none; }.field:focus { background:var(--white);border-color:rgba(104,151,255,.55);box-shadow:0 0 0 4px rgba(104,151,255,.08); }.field-area { min-height:82px;resize:vertical; }.enquiry-form .button { width:100%; }.form-privacy { margin:-4px 0 0;color:#8c96a8;font-size:8px;line-height:1.45; }.errorlist { margin:0;padding:0;color:#b62d35;font-size:9px;list-style:none;text-transform:none; }.has-error .field { border-color:#d54b52; }.form-errors { padding:9px;color:#8f2028;background:#fff0f2;border-radius:8px; }

/* About */
.inner-hero-note { max-width:500px;padding:23px;background:rgba(255,255,255,.035);border:1px solid rgba(156,191,255,.11);border-radius:16px;backdrop-filter:blur(13px); }.inner-hero-note p { color:#96a3bd;font-size:17px; }.inner-hero-note span { color:var(--cyan);font:700 10px var(--display);text-transform:uppercase; }.about-intro { display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,9vw,140px);align-items:center;background:linear-gradient(180deg,#f8fafd,#f2f6fb); }.about-image-stack { position:relative;max-width:500px; }.about-image-stack > div { display:grid;min-height:535px;place-items:end center;overflow:hidden;background:linear-gradient(145deg,#15254b,#0c1731);border:1px solid rgba(135,177,255,.14);border-radius:32px;box-shadow:0 30px 70px rgba(17,39,81,.16); }.about-image-stack img { max-height:520px;object-fit:contain;filter:saturate(.8); }.about-image-stack > span { position:absolute;right:-20px;bottom:42px;padding:19px;color:var(--text);background:rgba(12,23,49,.72);border:1px solid rgba(101,231,255,.17);border-radius:14px;box-shadow:0 18px 40px rgba(12,25,54,.2);backdrop-filter:blur(16px);font:700 17px/1.18 var(--display);text-transform:uppercase; }.about-copy h2 { margin-bottom:25px;font-size:clamp(42px,5vw,66px);line-height:1.04; }.about-copy .lead { color:var(--ink);font-size:20px;font-weight:600; }.about-copy > p:not(.eyebrow):not(.lead) { color:var(--muted-dark);font-size:16px; }.about-copy .arrow-link { margin-top:15px; }
.belief-section { display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:100px clamp(22px,6vw,104px);color:var(--text);background:radial-gradient(circle at 15% 25%,rgba(101,231,255,.08),transparent 25%),linear-gradient(145deg,#080d1d,#0d1730); }.belief-heading h2 { max-width:520px;font-size:clamp(40px,5vw,63px);line-height:1.04; }.belief-grid { display:grid;gap:10px; }.belief-grid article { display:grid;grid-template-columns:42px .8fr 1fr;gap:19px;padding:23px;background:rgba(255,255,255,.035);border:1px solid rgba(155,190,255,.1);border-radius:15px;backdrop-filter:blur(12px); }.belief-grid span { color:var(--cyan);font:700 10px var(--display); }.belief-grid h3 { margin:0;font-size:19px; }.belief-grid p { margin:0;color:#8290ac;font-size:12px; }
.vision-section { display:grid;grid-template-columns:1fr 1fr;gap:17px;background:#eff4fa; }.vision-card { min-height:390px;padding:clamp(30px,5vw,58px);border-radius:23px; }.vision-card > span { font:700 10px var(--display);text-transform:uppercase; }.vision-card h2 { margin:57px 0 19px;font-size:clamp(32px,4vw,49px);line-height:1.07; }.vision-card p { max-width:550px; }.vision-dark { color:var(--text);background:linear-gradient(145deg,#111f40,#0a142d);box-shadow:0 25px 55px rgba(15,32,68,.15); }.vision-dark > span { color:var(--cyan); }.vision-dark p { color:#8996b1; }.vision-light { background:rgba(255,255,255,.75);border:1px solid rgba(38,61,105,.09);box-shadow:0 18px 45px rgba(21,43,85,.06); }.vision-light > span { color:#607eb8; }.vision-light p { color:var(--muted-dark); }
.process-line { display:flex;align-items:center;margin-top:52px; }.process-line > div { flex:1; }.process-line > i { height:1px;flex:.4;background:#ccd8e8; }.process-line span { display:grid;width:40px;height:40px;place-items:center;color:var(--cyan);background:#12203f;border:1px solid rgba(101,231,255,.16);border-radius:50%;box-shadow:0 8px 20px rgba(16,35,74,.12);font:700 9px var(--display); }.process-line h3 { margin:15px 0 3px;font-size:19px; }.process-line p { margin:0;color:var(--muted-dark);font-size:11px; }

/* Corporate */
.corporate-page-hero { display:grid;grid-template-columns:1fr .38fr;gap:80px;align-items:end;min-height:650px;padding:88px clamp(22px,6vw,104px); }.corporate-page-hero h1 { max-width:900px;margin-bottom:24px;font-size:clamp(51px,7vw,92px);line-height:.98; }.corporate-page-hero > div:first-child > p:not(.eyebrow) { max-width:680px;color:#96a4bf;font-size:18px; }.corporate-metric-card { padding:27px;color:var(--text);background:rgba(21,34,69,.58);border:1px solid rgba(155,192,255,.16);border-radius:20px;box-shadow:0 28px 70px rgba(0,0,0,.27),var(--glow);backdrop-filter:blur(18px); }.corporate-metric-card > span { color:var(--cyan);font:700 9px var(--display);text-transform:uppercase; }.corporate-metric-card strong { display:block;margin:37px 0;font:700 29px/1.45 var(--display); }.corporate-metric-card p { margin:0;color:#8795b1;font-size:11px; }.client-strip { display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#dfe6f0; }.client-strip span { padding:21px 10px;color:#63718c;background:rgba(255,255,255,.9);text-align:center;font:700 10px var(--display);text-transform:uppercase; }
.corporate-benefit { background:linear-gradient(180deg,#f7f9fd,#eff4fa); }.benefit-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px; }.benefit-grid article { min-height:270px;padding:25px;background:rgba(255,255,255,.7);border:1px solid rgba(38,61,105,.09);border-radius:18px;box-shadow:0 12px 32px rgba(24,45,86,.045); }.benefit-grid span { color:#6482bc;font:700 10px var(--display); }.benefit-grid h3 { margin:66px 0 12px;font-size:21px; }.benefit-grid p { color:var(--muted-dark);font-size:12px; }
.corporate-process { display:grid;grid-template-columns:.8fr 1.2fr;gap:88px;padding:98px clamp(22px,6vw,104px);color:var(--text);background:linear-gradient(145deg,#0a1022,#101c38); }.corporate-process-copy h2 { font-size:clamp(42px,5vw,64px);line-height:1.04; }.corporate-process-copy > p:not(.eyebrow) { color:#8c9ab6; }.corporate-steps { display:grid;gap:9px;margin:0;padding:0;list-style:none; }.corporate-steps li { display:grid;grid-template-columns:42px 1fr;gap:18px;padding:21px;background:rgba(255,255,255,.035);border:1px solid rgba(153,190,255,.1);border-radius:14px; }.corporate-steps > li > span { color:var(--cyan);font:700 10px var(--display); }.corporate-steps h3 { margin-bottom:4px;font-size:20px; }.corporate-steps p { margin:0;color:#8290ab;font-size:12px; }
.corporate-topics { background:#f5f8fc; }.topic-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:13px; }.topic-grid > div { display:grid;grid-template-columns:62px 1fr;gap:9px 23px;padding:27px;background:rgba(255,255,255,.72);border:1px solid rgba(38,61,105,.09);border-radius:17px;box-shadow:0 10px 28px rgba(24,45,86,.04); }.topic-grid > div > span { grid-row:span 2;display:grid;width:55px;height:55px;place-items:center;color:var(--cyan);background:linear-gradient(145deg,#17284d,#0e1934);border-radius:16px;box-shadow:0 10px 24px rgba(16,35,73,.13);font:600 19px var(--display); }.topic-grid h3 { margin:0;font-size:20px; }.topic-grid p { margin:0;color:var(--muted-dark);font-size:12px; }
.corporate-enquiry { display:grid;grid-template-columns:.8fr 1.2fr;gap:78px;padding:98px clamp(22px,8vw,130px);background:linear-gradient(145deg,#edf4fb,#f8faff); }.corporate-enquiry h2 { margin-bottom:19px;font-size:clamp(40px,5vw,64px);line-height:1.04; }.corporate-enquiry > div > p:not(.eyebrow) { color:var(--muted-dark); }.corporate-enquiry .enquiry-form { padding:29px;background:rgba(255,255,255,.74);border:1px solid rgba(38,61,105,.1);border-radius:20px;box-shadow:0 24px 60px rgba(22,43,86,.11);backdrop-filter:blur(16px); }.direct-contact { display:grid;gap:4px;margin-top:38px; }.direct-contact span { margin-bottom:6px;color:#637db1;font:700 9px var(--display);text-transform:uppercase; }.direct-contact a { font-weight:700; }

/* Contact and success */
.contact-page { display:grid;grid-template-columns:.85fr 1.15fr;min-height:710px; }.contact-copy { padding:88px clamp(22px,6vw,100px); }.contact-copy h1 { margin-bottom:23px;font-size:clamp(52px,7vw,84px);line-height:.98; }.contact-copy > p:not(.eyebrow) { max-width:550px;color:#93a1bc;font-size:17px; }.contact-options { display:grid;gap:8px;margin-top:46px; }.contact-options a { display:grid;grid-template-columns:105px 1fr 24px;gap:14px;align-items:center;padding:15px 17px;background:rgba(255,255,255,.035);border:1px solid rgba(155,191,255,.1);border-radius:12px;backdrop-filter:blur(11px); }.contact-options span { color:var(--cyan);font:700 9px var(--display);text-transform:uppercase; }.contact-options strong { font-size:13px; }.contact-options b { color:#8494b4;font-size:18px; }
.contact-form-panel { position:relative;z-index:2;padding:78px clamp(25px,6vw,78px);color:var(--ink);background:rgba(247,249,253,.96); }.contact-form-panel > div:first-child { margin-bottom:24px; }.contact-form-panel > div:first-child > span { color:#607fba;font:700 9px var(--display);text-transform:uppercase; }.contact-form-panel h2 { margin:8px 0 4px;font-size:36px; }.contact-form-panel > div:first-child > p { color:#8590a4;font-size:11px; }.contact-form-panel .enquiry-form { padding:28px;background:rgba(255,255,255,.76);border:1px solid rgba(38,61,105,.1);border-radius:19px;box-shadow:0 22px 55px rgba(20,41,83,.09); }
.contact-expect { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding:1px;background:#dfe6f0; }.contact-expect div { padding:33px clamp(25px,5vw,68px);background:rgba(255,255,255,.88); }.contact-expect span { color:#6685c1;font:700 9px var(--display); }.contact-expect h3 { margin:23px 0 5px; }.contact-expect p { margin:0;color:var(--muted-dark);font-size:12px; }
.success-page { display:grid;min-height:650px;padding:100px 24px;place-content:center;background:radial-gradient(circle at 50% 40%,rgba(104,151,255,.08),transparent 28%),#f5f8fc;text-align:center; }.success-mark { display:grid;width:84px;height:84px;margin:0 auto 28px;place-items:center;color:#0e2740;background:rgba(101,231,255,.25);border:1px solid rgba(61,188,216,.25);border-radius:50%;box-shadow:0 0 40px rgba(101,231,255,.16);font-size:32px; }.success-page .eyebrow { justify-content:center; }.success-page h1 { max-width:800px;margin:0 auto 19px;font-size:clamp(42px,6vw,72px);line-height:1.02; }.success-page > p:not(.eyebrow) { max-width:680px;margin:0 auto 29px;color:var(--muted-dark);font-size:16px; }.success-page > div:last-child { display:flex;justify-content:center;align-items:center;gap:24px; }

/* Footer */
.footer { display:grid;grid-template-columns:1.3fr .7fr .8fr;gap:68px;padding:76px clamp(22px,6vw,104px) 29px;color:var(--text);background:linear-gradient(145deg,#060a17,#0b1124);border-top:1px solid rgba(152,190,255,.08); }.footer-logo { display:inline-block;padding:7px;background:rgba(255,255,255,.92);border-radius:11px; }.footer-logo img { width:180px; }.footer-lead p { max-width:410px;margin:22px 0 15px;color:#7f8ca7; }.footer-phone { color:var(--cyan);font:700 20px var(--display); }.footer-column { display:grid;align-content:start;gap:10px; }.footer-column h2 { margin-bottom:12px;color:#7386ab;font-size:10px;letter-spacing:.1em;text-transform:uppercase; }.footer-column a,.footer-column p { margin:0;color:#8390aa;font-size:12px; }.footer-column a:hover { color:var(--cyan); }.footer-bottom { grid-column:1/-1;display:flex;justify-content:space-between;margin-top:42px;padding-top:21px;color:#536079;border-top:1px solid rgba(255,255,255,.07);font-size:9px;text-transform:uppercase; }
.whatsapp-float { position:fixed;z-index:80;right:20px;bottom:20px;display:grid;width:50px;height:50px;place-items:center;color:#081523;background:rgba(121,242,192,.92);border:1px solid rgba(255,255,255,.6);border-radius:50%;box-shadow:0 15px 35px rgba(31,120,89,.2),0 0 0 5px rgba(121,242,192,.08);font:700 10px var(--display);backdrop-filter:blur(12px); }

/* Motion */
.js .reveal { opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1); }.js .reveal.is-visible { opacity:1;transform:none; }.js .delay-1 { transition-delay:.07s; }.js .delay-2 { transition-delay:.14s; }.js .delay-3 { transition-delay:.21s; }.js .delay-4 { transition-delay:.28s; }.js .delay-5 { transition-delay:.35s; }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition-duration:.01ms!important} }

@media (max-width:1120px) {
    .topbar { display:none; }.site-header { grid-template-columns:1fr auto;height:72px; }.menu-toggle { display:block; }.nav-cta { display:none; }.nav { position:fixed;z-index:99;top:72px;right:0;bottom:0;left:0;display:grid;align-content:start;gap:0;padding:25px;transform:translateX(100%);background:rgba(247,250,254,.97);backdrop-filter:blur(22px);transition:transform .25s; }.nav.is-open { transform:none; }.nav a { padding:18px 4px;border-bottom:1px solid var(--line-dark);font-size:17px; }.nav a::after { display:none; }
    .home-hero { grid-template-columns:1fr 400px; }.path-grid { grid-template-columns:repeat(2,1fr); }.featured-grid { grid-template-columns:repeat(2,1fr); }.method-visual { padding:45px; }.method-photo { min-height:410px; }.catalog-shell { grid-template-columns:215px 1fr; }.catalog-grid { grid-template-columns:1fr; }.detail-layout { grid-template-columns:minmax(0,1fr) 325px;gap:34px; }.project-grid { grid-template-columns:1fr; }.benefit-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:820px) {
    .section { padding:76px 22px; }.section-heading-row { align-items:flex-start;flex-direction:column; }.home-hero,.catalog-hero,.inner-hero,.detail-hero-grid,.detail-layout,.about-intro,.belief-section,.vision-section,.corporate-page-hero,.corporate-process,.corporate-enquiry,.contact-page,.cta-section,.catalog-cta,.footer { grid-template-columns:1fr; }
    .home-hero { padding:58px 22px 68px; }.home-hero h1 { font-size:clamp(50px,14vw,76px); }.hero-visual { max-width:520px;margin:28px auto 0; }.hero-image-wrap { min-height:440px; }.visual-code,.visual-card { right:0; }.hero-stamp { left:0; }.signal-strip { justify-content:flex-start;overflow-x:auto; }
    .path-grid,.featured-grid,.client-strip,.topic-grid,.contact-expect,.related-grid { grid-template-columns:1fr; }.path-card { min-height:295px; }.method-section { grid-template-columns:1fr; }.method-visual { min-height:580px; }.method-copy { padding:72px 28px; }.audience-section { grid-template-columns:1fr; }.cta-section { gap:34px;padding:78px 22px; }.cta-mark { right:-50px; }
    .catalog-hero,.inner-hero { min-height:460px;padding:63px 22px;gap:34px; }.catalog-hero h1,.inner-hero h1 { font-size:clamp(50px,13vw,77px); }.catalog-shell { display:block;padding:48px 22px 78px; }.catalog-sidebar { position:static;margin-bottom:38px; }.category-filter { display:flex;gap:8px;overflow-x:auto;padding:10px 0; }.category-filter a { flex:0 0 auto;gap:8px;padding:8px 11px;background:rgba(255,255,255,.75);border:1px solid var(--line-dark);border-radius:999px; }.sidebar-help { display:none; }.catalog-cta { gap:24px;padding:58px 22px; }
    .detail-hero { padding:24px 22px 0; }.detail-hero-grid { padding:43px 0; }.detail-art { max-width:500px;width:100%; }.detail-facts { grid-template-columns:repeat(2,1fr); }.detail-layout { padding:63px 22px; }.detail-sidebar { grid-row:1; }.enrol-card { position:static; }.form-compact .form-grid { grid-template-columns:repeat(2,1fr); }.project-grid { grid-template-columns:repeat(3,1fr); }.detail-section-heading { grid-template-columns:1fr;gap:5px; }
    .about-image-stack { margin:auto; }.about-image-stack > span { right:0; }.belief-section { gap:34px;padding:76px 22px; }.belief-grid article { grid-template-columns:35px 1fr; }.belief-grid article p { grid-column:2; }.process-line { display:grid;grid-template-columns:repeat(2,1fr);gap:29px; }.process-line > i { display:none; }.corporate-page-hero { gap:48px;padding:73px 22px; }.client-strip { display:flex;overflow-x:auto; }.client-strip span { min-width:180px; }.corporate-process,.corporate-enquiry { gap:43px;padding:73px 22px; }.contact-copy,.contact-form-panel { padding:68px 22px; }.footer { gap:38px;padding:63px 22px 24px; }.footer-bottom { align-items:flex-start;flex-direction:column;gap:8px; }
}

@media (max-width:560px) {
    .site-header { padding:8px 17px; }.brand img { width:148px; }.hero-facts { grid-template-columns:1fr; }.hero-image-wrap { min-height:365px;margin:0; }.visual-card { bottom:24px; }.hero-stamp { bottom:90px; }.path-grid,.featured-grid,.benefit-grid,.outcomes-grid,.fit-section,.project-grid,.form-grid,.form-compact .form-grid { grid-template-columns:1fr; }.method-visual { min-height:460px;padding:25px; }.method-photo { min-height:340px; }.catalog-search { grid-template-columns:1fr; }.result-heading { align-items:flex-start;flex-direction:column; }.catalog-card-body > p:not(.course-category),.catalog-card h3 { min-height:0; }.detail-facts { grid-template-columns:1fr 1fr; }.detail-art { min-height:275px; }.detail-section { padding:46px 0; }.curriculum-module summary { grid-template-columns:76px 1fr 20px;padding:17px; }.module-topics { padding:0 17px 17px; }.certificate-strip { grid-template-columns:1fr; }.certificate-icon { width:58px;height:58px; }.about-image-stack > div { min-height:420px; }.belief-grid article { grid-template-columns:30px 1fr; }.vision-card { min-height:340px; }.process-line { grid-template-columns:1fr; }.topic-grid > div { grid-template-columns:48px 1fr;padding:21px; }.topic-grid > div > span { width:45px;height:45px; }.contact-options a { grid-template-columns:1fr 24px; }.contact-options span,.contact-options strong { grid-column:1; }.contact-options b { grid-column:2;grid-row:1/span 2; }.contact-form-panel .enquiry-form { padding:19px; }.success-page > div:last-child { align-items:stretch;flex-direction:column; }
}

@media (max-width: 560px) {
    .intelligence-map { min-height: 470px; border-radius: 25px; }
    .network-graph { width: 118%; height: 118%; inset: -9%; }
    .learning-core { width: 142px; height: 142px; }
    .learning-core strong { font-size: 46px; }
    .core-ring { inset: -15px; }
    .map-label { min-width: 125px; padding: 10px 11px; }
    .map-label-ai { top: 16%; left: 3%; }
    .map-label-code { top: 8%; right: 3%; }
    .map-label-data { right: 3%; bottom: 17%; }
    .map-status { left: 3%; bottom: 5%; }
}

/* Refined learning system */
.method-section { position: relative; display: block; min-height: auto; padding: 112px clamp(22px,6vw,104px); overflow: hidden; color: var(--text); background: radial-gradient(circle at 80% 18%,rgba(104,151,255,.13),transparent 26%),radial-gradient(circle at 12% 84%,rgba(101,231,255,.07),transparent 25%),linear-gradient(145deg,#070b18,#0c1530); }
.method-section::before { position:absolute;inset:0;opacity:.18;background-image:radial-gradient(circle,rgba(156,207,255,.7) 1px,transparent 1.4px);background-size:42px 42px;mask-image:linear-gradient(100deg,#000,transparent 84%);content:""; }
.method-shell { position:relative;z-index:2;max-width:1440px;margin:auto; }
.method-header { display:grid;grid-template-columns:1.1fr .65fr;gap:80px;align-items:end;margin-bottom:70px; }
.method-header h2 { max-width:850px;margin:0;font-size:clamp(42px,5vw,69px);line-height:1.03; }
.method-header > p { max-width:500px;margin:0;color:#8c9ab7;font-size:16px; }
.method-network { position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:13px; }
.method-track { position:absolute;z-index:-1;top:43px;right:11%;left:11%;height:1px;background:linear-gradient(90deg,transparent,rgba(101,231,255,.45),rgba(158,140,255,.4),transparent); }
.method-track span { position:absolute;width:100px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);filter:drop-shadow(0 0 5px var(--cyan));animation:methodSignal 6s linear infinite; }
.method-step { min-height:335px;padding:22px;background:linear-gradient(145deg,rgba(23,36,73,.62),rgba(10,19,42,.55));border:1px solid rgba(151,190,255,.12);border-radius:20px;box-shadow:inset 0 1px rgba(255,255,255,.045),0 24px 60px rgba(0,0,0,.17);backdrop-filter:blur(18px);transition:transform .3s,border-color .3s,box-shadow .3s; }
.method-step:hover { transform:translateY(-7px);border-color:rgba(101,231,255,.25);box-shadow:inset 0 1px rgba(255,255,255,.06),0 30px 75px rgba(0,0,0,.25),0 0 45px rgba(101,231,255,.045); }
.method-node { position:relative;display:grid;width:48px;height:48px;place-items:center;color:var(--cyan);background:#0c1935;border:1px solid rgba(101,231,255,.24);border-radius:50%;box-shadow:0 0 0 7px rgba(101,231,255,.025),0 0 25px rgba(101,231,255,.1);font:700 10px var(--display); }
.method-node i { position:absolute;inset:-6px;border:1px solid rgba(101,231,255,.09);border-top-color:rgba(101,231,255,.42);border-radius:50%;animation:orbitSpin 12s linear infinite; }
.method-step-copy { padding:48px 1px 25px; }
.method-step-copy small { color:#66799e;font:700 8px var(--display);letter-spacing:.12em;text-transform:uppercase; }
.method-step-copy h3 { margin:7px 0 10px;font-size:25px; }
.method-step-copy p { margin:0;color:#8795b2;font-size:13px; }
.method-output { display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid rgba(162,193,255,.1); }
.method-output span { color:#64779b;font-size:8px;letter-spacing:.1em;text-transform:uppercase; }
.method-output strong { color:#a6b4d0;font:600 10px var(--display); }
.method-summary { display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:14px;padding:17px 20px;background:rgba(255,255,255,.035);border:1px solid rgba(153,190,255,.1);border-radius:15px;backdrop-filter:blur(14px); }
.method-summary > div:first-child { display:flex;align-items:center;gap:13px; }.method-summary p { margin:0; }.method-summary small,.method-summary strong { display:block; }.method-summary small { color:#65779b;font-size:8px;text-transform:uppercase; }.method-summary strong { margin-top:2px;font:600 11px var(--display); }
.method-proof { display:flex;align-items:center;gap:8px; }.method-proof > span { margin-right:4px;color:#65779b;font-size:8px;text-transform:uppercase; }.method-proof b { padding:6px 9px;color:#9eacc7;background:rgba(255,255,255,.04);border:1px solid rgba(157,190,255,.08);border-radius:7px;font:600 9px var(--display); }
@keyframes methodSignal { from{transform:translateX(-100px)}to{transform:translateX(900px)} }

/* Placement readiness network */
.placement-section { position:relative;display:grid;grid-template-columns:.82fr 1.18fr;gap:54px 80px;padding:112px clamp(22px,6vw,104px);overflow:hidden;background:radial-gradient(circle at 90% 8%,rgba(104,151,255,.1),transparent 24%),linear-gradient(180deg,#f7f9fd,#edf3fa); }
.placement-section::before { position:absolute;width:520px;height:520px;right:-300px;bottom:-290px;border:1px solid rgba(84,123,198,.1);border-radius:50%;box-shadow:0 0 0 70px rgba(84,123,198,.025),0 0 0 140px rgba(84,123,198,.018);content:""; }
.placement-intro { align-self:center; }.placement-intro h2 { margin-bottom:22px;font-size:clamp(41px,5vw,66px);line-height:1.04; }.placement-intro > p:not(.eyebrow) { max-width:620px;color:var(--muted-dark);font-size:17px; }.placement-actions { display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px; }
.placement-console { position:relative;min-height:405px;padding:24px;color:var(--text);background:linear-gradient(145deg,rgba(18,31,64,.96),rgba(8,16,35,.97));border:1px solid rgba(133,177,255,.16);border-radius:26px;box-shadow:inset 0 1px rgba(255,255,255,.06),0 34px 80px rgba(19,40,82,.19),0 0 80px rgba(101,231,255,.05); }
.placement-console::before { position:absolute;inset:0;opacity:.19;background-image:linear-gradient(rgba(136,180,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(136,180,255,.16) 1px,transparent 1px);background-size:39px 39px;mask-image:radial-gradient(circle at 50% 50%,#000,transparent 73%);border-radius:inherit;content:""; }
.console-top { position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid rgba(155,190,255,.1);color:#7082a4;font:700 9px var(--display);letter-spacing:.06em;text-transform:uppercase; }
.console-top span { display:flex;align-items:center;gap:8px; }.console-top i { width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 12px rgba(121,242,192,.8); }.console-top b { color:#6a7ca0;font-size:8px; }
.readiness-score { position:relative;z-index:2;display:grid;grid-template-columns:180px 1fr;gap:34px;align-items:center;padding:37px 20px; }
.score-orbit { position:relative;display:grid;width:155px;height:155px;place-content:center;border:1px solid rgba(101,231,255,.18);border-radius:50%;box-shadow:inset 0 0 40px rgba(101,231,255,.04),0 0 0 13px rgba(101,231,255,.02),0 0 45px rgba(101,231,255,.08);text-align:center; }
.score-orbit::before { position:absolute;inset:-10px;border:1px dashed rgba(158,140,255,.2);border-radius:50%;animation:orbitSpin 26s linear infinite;content:""; }.score-orbit span { color:#7284a7;font:700 8px var(--display);letter-spacing:.12em; }.score-orbit strong { color:var(--cyan);font:500 50px/1 var(--display);text-shadow:0 0 25px rgba(101,231,255,.3); }.score-orbit small { color:#697b9d;font-size:8px; }.readiness-score > div:last-child small,.readiness-score > div:last-child strong { display:block; }.readiness-score > div:last-child small { max-width:220px;color:#7585a4;font-size:10px; }.readiness-score > div:last-child strong { max-width:270px;margin-top:8px;font:700 23px/1.2 var(--display); }
.console-signals { position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px;color:#7384a5;background:rgba(255,255,255,.025);border:1px solid rgba(151,187,255,.08);border-radius:10px;font-size:8px;text-transform:uppercase; }.console-signals i { width:4px;height:4px;background:var(--cyan);border-radius:50%;box-shadow:0 0 8px var(--cyan); }
.placement-grid { position:relative;z-index:2;grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:13px; }
.placement-grid article { min-height:285px;padding:23px;background:rgba(255,255,255,.7);border:1px solid rgba(38,61,105,.09);border-radius:18px;box-shadow:0 12px 34px rgba(24,45,86,.045);backdrop-filter:blur(14px);transition:transform .3s,box-shadow .3s,border-color .3s; }.placement-grid article:hover { transform:translateY(-6px);border-color:rgba(104,151,255,.22);box-shadow:0 25px 55px rgba(24,45,86,.09); }
.placement-icon { display:grid;width:42px;height:42px;place-items:center;color:#6684bf;background:rgba(104,151,255,.07);border:1px solid rgba(104,151,255,.14);border-radius:12px;font:700 9px var(--display); }.placement-grid article > span { display:block;margin:35px 0 7px;color:#6780b1;font:700 8px var(--display);letter-spacing:.11em;text-transform:uppercase; }.placement-grid h3 { margin-bottom:10px;font-size:20px;line-height:1.25; }.placement-grid p { color:var(--muted-dark);font-size:12px; }.placement-grid article > b { display:block;margin-top:18px;color:#647fb4;font:600 10px var(--display); }
.placement-note { position:relative;z-index:2;grid-column:1/-1;margin:0;color:#858fa1;font-size:10px;text-align:center; }

@media(max-width:1000px){.method-header{grid-template-columns:1fr;gap:20px}.method-network{grid-template-columns:repeat(2,1fr)}.method-track{display:none}.placement-section{grid-template-columns:1fr}.placement-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.method-section,.placement-section{padding:76px 22px}.method-network,.placement-grid{grid-template-columns:1fr}.method-step{min-height:auto}.method-step-copy{padding:32px 0 22px}.method-summary{align-items:flex-start;flex-direction:column}.method-proof{flex-wrap:wrap}.readiness-score{grid-template-columns:1fr;justify-items:center;text-align:center}.placement-console{min-height:auto}.console-signals{flex-wrap:wrap}.placement-actions{align-items:flex-start;flex-direction:column}.placement-grid article{min-height:auto}}

/* Mobile layout hardening */
html,body { max-width:100%;overflow-x:clip; }
main { overflow:clip; }
@media(max-width:820px){
    .site-header { width:100%;gap:14px; }.brand { min-width:0; }.brand img { max-width:160px;height:auto; }.menu-toggle { flex:0 0 44px; }
    .home-hero { min-height:auto;gap:42px; }.hero-copy { min-width:0; }.home-hero h1 { max-width:100%;overflow-wrap:anywhere; }.hero-text { max-width:100%; }.hero-visual { width:100%;min-width:0; }
    .hero-facts { width:100%;max-width:none; }.hero-facts span { max-width:none; }
    .path-grid,.featured-grid { width:100%; }.path-card,.course-tile { min-width:0; }.course-tile h3 { min-height:auto; }
    .method-section,.placement-section { width:100%; }.method-header { margin-bottom:46px; }.method-header h2,.placement-intro h2 { overflow-wrap:anywhere; }.method-network { gap:11px; }.method-step { min-width:0; }.method-summary { margin-top:11px; }
    .placement-section { gap:45px; }.placement-console { width:100%;min-width:0; }.placement-grid { width:100%; }.placement-grid article { min-width:0; }
    .catalog-results { min-width:0; }.catalog-grid { width:100%; }.catalog-card { min-width:0; }.catalog-search { width:100%; }.category-filter { max-width:100%;padding-bottom:14px;scrollbar-width:thin; }
    .detail-hero-grid { min-height:auto; }.detail-hero-copy,.detail-main,.detail-sidebar { min-width:0; }.detail-hero h1 { overflow-wrap:anywhere; }.detail-art { min-width:0; }.detail-facts div { min-width:0; }.detail-facts strong { overflow-wrap:anywhere; }
    .outcomes-grid,.project-grid,.related-grid { width:100%; }.curriculum-module { min-width:0; }.curriculum-module h3 { overflow-wrap:anywhere; }.module-topics { padding-left:20px; }
    .about-intro,.belief-section,.vision-section,.corporate-process,.corporate-enquiry { width:100%; }.about-copy,.belief-heading,.corporate-process-copy { min-width:0; }
    .contact-copy,.contact-form-panel { min-width:0; }.contact-options strong,.direct-contact a,.footer-column a { overflow-wrap:anywhere;word-break:break-word; }
}
@media(max-width:640px){
    .section { padding:68px 18px; }.eyebrow { font-size:9px;letter-spacing:.11em; }.section-intro { margin-bottom:38px; }.section-intro h2,.section-heading-row h2 { font-size:clamp(34px,10vw,46px); }
    .site-header { height:66px;padding:8px 16px; }.brand img { width:140px; }.nav { top:66px;padding:18px; }.nav a { padding:16px 3px;font-size:16px; }
    .home-hero { padding:50px 18px 58px;gap:34px; }.home-hero h1 { margin-bottom:20px;font-size:clamp(43px,13.5vw,63px);line-height:1; }.hero-text { font-size:16px; }.hero-actions { display:grid;grid-template-columns:1fr;margin-top:27px; }.hero-actions .button { width:100%; }.hero-facts { grid-template-columns:1fr;gap:8px;margin-top:32px; }.hero-facts div { display:grid;grid-template-columns:52px 1fr;align-items:center;padding:12px 14px; }.hero-facts strong { font-size:20px; }.hero-facts span { margin:0; }
    .signal-strip { min-height:57px;padding:13px 18px;gap:22px;font-size:9px; }
    .path-grid,.featured-grid { grid-template-columns:1fr; }.path-card { min-height:270px;padding:22px; }.course-cover { min-height:190px; }.course-tile-body,.catalog-card-body { padding:20px; }
    .method-section,.placement-section { padding:70px 18px; }.method-header { gap:14px;margin-bottom:37px; }.method-header h2,.placement-intro h2 { font-size:clamp(35px,10.5vw,48px); }.method-header > p,.placement-intro > p:not(.eyebrow) { font-size:15px; }.method-network { grid-template-columns:1fr; }.method-step { min-height:auto;padding:20px; }.method-step-copy { padding:28px 0 20px; }.method-summary { align-items:flex-start;flex-direction:column;padding:16px; }.method-proof { flex-wrap:wrap; }.method-proof > span { flex-basis:100%; }.method-proof b { padding:5px 7px; }
    .placement-section { grid-template-columns:1fr;gap:36px; }.placement-actions { display:grid;width:100%;gap:18px; }.placement-actions .button { width:100%; }.placement-console { min-height:auto;padding:18px;border-radius:20px; }.readiness-score { grid-template-columns:1fr;gap:27px;justify-items:center;padding:28px 5px;text-align:center; }.score-orbit { width:132px;height:132px; }.score-orbit strong { font-size:43px; }.readiness-score > div:last-child strong { font-size:20px; }.console-signals { flex-wrap:wrap;gap:8px;padding:11px; }.placement-grid { grid-template-columns:1fr; }.placement-grid article { min-height:auto;padding:21px; }.placement-grid article > span { margin-top:25px; }.placement-note { text-align:left; }
    .catalog-hero,.inner-hero { min-height:auto;padding:54px 18px; }.catalog-hero h1,.inner-hero h1 { font-size:clamp(43px,13vw,61px); }.catalog-shell { padding:40px 18px 68px; }.catalog-search { grid-template-columns:1fr; }.catalog-search .button { width:100%; }.result-heading { margin-top:30px; }.catalog-card-visual { min-height:155px; }.catalog-card h3 { min-height:auto; }.catalog-meta { gap:6px 9px; }.catalog-meta span:not(:first-child)::before { margin-right:9px; }.catalog-cta { padding:52px 18px; }.catalog-cta .button { width:100%; }
    .detail-hero { padding:22px 18px 0; }.detail-hero-grid { gap:32px;padding:38px 0; }.detail-hero h1 { font-size:clamp(39px,11.5vw,57px); }.detail-hero-copy > p { font-size:16px; }.detail-actions { display:grid; }.detail-actions .button { width:100%; }.detail-art { min-height:255px;border-radius:21px; }.detail-symbol { font-size:66px; }.detail-facts { grid-template-columns:1fr 1fr; }.detail-facts div { padding:15px 12px; }.detail-facts div:last-child { grid-column:1/-1; }.detail-layout { padding:52px 18px 68px; }.detail-section { padding:42px 0; }.detail-section h2 { font-size:clamp(32px,9vw,43px); }.outcomes-grid,.fit-section,.project-grid,.related-grid { grid-template-columns:1fr; }.curriculum-module summary { grid-template-columns:68px 1fr 18px;gap:8px;padding:16px; }.curriculum-module h3 { font-size:16px; }.module-topics { padding:0 16px 16px; }.certificate-strip { grid-template-columns:1fr;padding:24px; }.related-section { padding:68px 18px; }
    .form-grid,.form-compact .form-grid { grid-template-columns:1fr; }.enrol-card .enquiry-form { padding:18px; }.enrol-contact { align-items:flex-start;flex-direction:column; }
    .about-intro { gap:45px; }.about-image-stack > div { min-height:390px;border-radius:24px; }.about-image-stack > span { right:8px;bottom:22px;padding:15px;font-size:14px; }.about-copy h2,.belief-heading h2,.corporate-page-hero h1,.corporate-process-copy h2,.corporate-enquiry h2 { font-size:clamp(36px,10.5vw,49px); }
    .belief-section,.corporate-process,.corporate-enquiry { padding:68px 18px; }.belief-grid article { grid-template-columns:27px 1fr;padding:18px; }.vision-section { gap:11px; }.vision-card { min-height:auto;padding:27px 22px; }.vision-card h2 { margin:40px 0 16px;font-size:33px; }.process-line { grid-template-columns:1fr; }
    .corporate-page-hero { min-height:auto;padding:60px 18px; }.corporate-page-hero .hero-actions { display:grid; }.corporate-metric-card { padding:22px; }.benefit-grid,.topic-grid { grid-template-columns:1fr; }.corporate-enquiry .enquiry-form { padding:20px; }.direct-contact a { font-size:14px; }
    .contact-copy,.contact-form-panel { padding:58px 18px; }.contact-copy h1 { font-size:clamp(43px,13vw,61px); }.contact-options a { grid-template-columns:1fr 20px;padding:14px; }.contact-options span,.contact-options strong { grid-column:1; }.contact-options b { grid-column:2;grid-row:1/span 2; }.contact-form-panel .enquiry-form { padding:18px; }.contact-expect { grid-template-columns:1fr; }
    .cta-section { padding:68px 18px; }.cta-section h2 { font-size:clamp(38px,11vw,51px); }.cta-actions,.cta-actions .button { width:100%; }.footer { padding:58px 18px 24px; }.footer-bottom { margin-top:26px; }.whatsapp-float { right:14px;bottom:14px;width:46px;height:46px; }
}
@media(max-width:380px){
    .home-hero h1 { font-size:41px; }.brand img { width:128px; }.menu-toggle { width:41px;height:41px; }.detail-facts { grid-template-columns:1fr; }.detail-facts div:last-child { grid-column:auto; }.course-stats,.catalog-meta { display:grid;gap:4px; }.course-stats span:not(:first-child)::before,.catalog-meta span:not(:first-child)::before { display:none; }.console-top { align-items:flex-start;flex-direction:column;gap:7px; }
}

/* Readability and compact-screen corrections */
.nav a { font-size:15px; }
.nav-cta { font-size:14px; }
.topbar { font-size:12px; }
.enrol-card-head { padding:28px; }
.enrol-card-head p { font-size:11px;letter-spacing:.08em; }
.enrol-card-head h2 { font-size:30px;line-height:1.18; }
.enrol-card-head span { display:block;font-size:14px;line-height:1.5; }
.enrol-card .enquiry-form { padding:26px; }
.field-wrap { gap:7px;font-size:12px;letter-spacing:.025em; }
.field-wrap small { font-size:11px; }
.field { min-height:50px;padding:12px 13px;font-size:15px; }
.field-area { min-height:96px; }
.form-privacy { font-size:11px;line-height:1.5; }
.enrol-contact { padding:17px 25px;font-size:12px; }
.footer-lead p { font-size:15px;line-height:1.65; }
.footer-column h2 { font-size:12px; }
.footer-column a,.footer-column p { font-size:14px;line-height:1.65; }
.footer-bottom { font-size:11px;letter-spacing:.025em; }
.contact-options span { font-size:11px; }.contact-options strong { font-size:15px; }
.direct-contact span { font-size:11px; }.direct-contact a { font-size:15px; }

@media(max-width:820px){
    .nav a { padding:18px 5px;font-size:18px;line-height:1.35; }
    .signal-strip { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;min-height:auto;padding:16px 18px;overflow:hidden;white-space:normal; }
    .signal-strip span { display:flex;align-items:center;justify-content:center;min-height:36px;padding:7px 8px;background:rgba(104,151,255,.055);border:1px solid rgba(104,151,255,.08);border-radius:9px;text-align:center;font-size:11px;line-height:1.35; }
    .signal-strip span:last-child { grid-column:1/-1; }
    .signal-strip i { display:none; }
    .enrol-card-head { padding:25px 22px; }.enrol-card-head h2 { font-size:28px; }.enrol-card-head span { font-size:14px; }
    .enrol-card .enquiry-form { padding:22px; }.field-wrap { font-size:12px; }.field { font-size:16px; }
    .footer { gap:34px; }.footer-column h2 { font-size:12px; }.footer-column a,.footer-column p { font-size:15px; }.footer-lead p { font-size:15px; }
}
@media(max-width:480px){
    .signal-strip { grid-template-columns:1fr;padding:14px 16px; }
    .signal-strip span,.signal-strip span:last-child { grid-column:auto;min-height:38px;font-size:11px; }
    .enrol-card-head h2 { font-size:27px; }.enrol-card-head p { font-size:11px; }.enrol-card-head span { font-size:14px; }
    .field-wrap { font-size:12px; }.field-wrap small { font-size:11px; }.form-privacy { font-size:11px; }
    .footer-column a,.footer-column p { font-size:15px; }.footer-bottom { font-size:11px;line-height:1.5; }
}
