/* BIM Era Academy: blueprint, source and intention. Kept separate from the homepage. */
body.academy-page{--paper:#080e19;--ink:#e9f2ff;--muted:#94a7bf;--line:rgba(150,191,235,.17);--accent:#8be2ff;background:var(--paper);color:var(--ink)}
.academy-page .site-header{background:rgba(8,14,25,.94);color:var(--ink);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.academy-page .brand-name,.academy-page .nav a,.academy-page .nav-resources summary{color:var(--ink)}
.academy-page .brand-sub{color:#8296b1}.academy-page .brand-name span{color:#8be2ff}.academy-page .header-action .btn{background:#8be2ff;color:#071321;border-color:#8be2ff}.academy-page .header-progress{background:#8be2ff}
.academy-page .resource-list{background:#101c2d;border-color:#29405c;box-shadow:0 25px 80px #0008}.academy-page .resource-list-title{color:#8197b6}.academy-page .resource-list a{border-color:#29405c}.academy-page .resource-list a:hover{background:#1a2a41}.academy-page .resource-list small{color:#93abc7}.academy-page .nav a[aria-current]{color:#8be2ff}
.academy-page .menu-toggle{color:#a6c7e8;border-color:#39516c}.academy-page .eyebrow{color:#8be2ff;letter-spacing:.18em;font-size:10px}.academy-page .btn{font-size:12px;min-height:48px}.academy-page .btn .icon{width:17px}.academy-page a,.academy-page button{touch-action:manipulation}
.academy-page :focus-visible{outline:2px solid #a8edff;outline-offset:5px}.academy-page [hidden]{display:none!important}
.academy-wrap{width:min(1280px,calc(100% - 112px));margin:0 auto}.academy-section{padding:112px 0;border-top:1px solid var(--line);position:relative;isolation:isolate}.academy-section h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(34px,4.2vw,62px);line-height:1.06;letter-spacing:-.055em;font-weight:400}.academy-section h3{font-family:'Space Grotesk',sans-serif;letter-spacing:-.035em;font-weight:400}.academy-section p{color:var(--muted);line-height:1.8}.micro{font:10px/1.7 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#8da4c0}.quiet-link{display:inline-flex;align-items:center;gap:8px;font:11px/1.6 'IBM Plex Mono',monospace;color:#a8def5;background:none;border:0;padding:0;text-align:left;cursor:pointer}.quiet-link:hover{color:#fff}.small-print{font-size:11px;line-height:1.8;color:#8096b2}.academy-primary{background:#a4e8ff!important;border:1px solid #a4e8ff!important;color:#071422!important}.academy-primary:hover{background:#d1f5ff!important}.academy-outline{background:#112139!important;border:1px solid #43617f!important;color:#ddf4ff!important}.academy-section .button-row{gap:12px}
.academy-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#26446b20 1px,transparent 1px),linear-gradient(90deg,#26446b20 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#0008,transparent 90%)}
.course-story{position:relative;height:690svh;background:#080e19;scroll-margin-top:88px;--hero:1;--revealed:0;--explode:0;--progress:0;--discipline:#8be2ff}.academy-stage{position:sticky;top:88px;height:calc(100svh - 88px);min-height:590px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 75% 40%,#152d4c88,transparent 60%),#080e19}.academy-stage:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:9;box-shadow:inset 0 -30px 50px #080e19}
.course-topline{position:absolute;z-index:10;top:27px;left:4%;right:4%;display:flex;align-items:center;gap:32px;font:9px 'IBM Plex Mono',monospace;letter-spacing:.08em;color:#829bb9}.course-topline>a{color:#b0d4f4}.course-topline>div{margin-left:auto;display:flex;gap:24px}.course-topline>div a:last-child{color:#b9dfff}.course-topline a:hover{color:#fff}
.course-entrance{position:absolute;left:5%;top:18%;width:44%;z-index:8;opacity:var(--hero);transform:translateY(calc((1 - var(--hero))*-32px));pointer-events:none}.course-entrance[data-visible]{pointer-events:auto}.course-entrance .eyebrow{margin-bottom:23px}.course-entrance h1{font:400 clamp(44px,5.1vw,82px)/1.01 'Space Grotesk',sans-serif;letter-spacing:-.067em;margin:0 0 25px}.course-entrance h1 span{color:#8be2ff}.course-entrance>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#a1b5cf;max-width:390px}.course-entrance .button-row{margin-top:28px;gap:10px;flex-wrap:wrap}.course-entrance .btn{font-size:10px;padding:12px 17px}.entrance-note{display:block;margin-top:27px;font:9px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:#708daf}
.course-viewer{position:absolute;inset:65px 0 130px 40%;z-index:1;overflow:hidden}.course-scene{position:absolute;inset:0;z-index:2;opacity:0;transition:opacity .5s}.course-scene canvas{display:block;width:100%;height:100%}.is-rendered .course-scene{opacity:1}.course-viewer:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080e19,transparent 12%),linear-gradient(0deg,#080e19,transparent 12%);z-index:3}.viewer-label{position:absolute;top:24px;left:13%;right:6%;display:flex;justify-content:space-between;color:#4b759e;font:8px 'IBM Plex Mono',monospace;letter-spacing:.1em;z-index:4}.viewer-cross{position:absolute;color:#45749e;font:18px 'IBM Plex Mono',monospace;z-index:4}.cross-a{left:8%;top:12%}.cross-b{right:7%;bottom:12%}.viewer-axis{position:absolute;right:7%;bottom:19%;width:40px;height:40px;border-left:1px solid #5a83a3;border-bottom:1px solid #5a83a3;z-index:4;color:#97b4cd;font:8px 'IBM Plex Mono',monospace;transform:rotate(-28deg)}.viewer-axis span{position:absolute}.viewer-axis span:first-child{top:-16px;left:-3px}.viewer-axis span:nth-child(2){bottom:-5px;right:-13px}.viewer-axis span:nth-child(3){bottom:-17px;left:-15px}.model-summary{position:absolute;left:13%;bottom:17px;z-index:5;display:grid;gap:4px}.model-summary strong{font:11px 'IBM Plex Mono',monospace;color:#c1d9ed}.model-summary .micro{font-size:8px;color:var(--discipline)}
.course-interface{opacity:var(--revealed);position:absolute;left:5%;top:16%;width:35%;height:57%;z-index:7;pointer-events:none;transform:translateY(calc((1 - var(--revealed))*22px))}.course-interface[data-visible]{pointer-events:auto}.panel-bar{display:flex;justify-content:space-between;gap:8px;padding:14px 18px;border-bottom:1px solid var(--line);font:8px 'IBM Plex Mono',monospace;color:#9ec1dc;letter-spacing:.06em}.panel-bar span:last-child{color:#668bad;font-size:7px}.anatomy-panel{border:1px solid #345372;background:linear-gradient(140deg,#12233bd9,#0a1426e8);box-shadow:12px 18px 0 -1px #080e19,12px 18px 0 0 #233e5c;transform:perspective(1400px) rotateY(calc(var(--explode)*-5deg));position:relative;max-width:430px}.anatomy-panel:before{content:'';position:absolute;inset:10px -10px -10px 10px;border:1px solid #31537766;transform:translateZ(-8px);z-index:-1}.anatomy-content{padding:25px}.anatomy-content h2{font:400 clamp(24px,2.6vw,40px)/1.1 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:14px 0}.anatomy-content>p:not(.micro){font-size:12px;color:#a5b9d0;line-height:1.8}.anatomy-content ul{list-style:none;padding:18px 0;margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:10px/2.2 'IBM Plex Mono',monospace;color:#9fdcf4;overflow-wrap:anywhere}.anatomy-content .quiet-link{font-size:9px}.blueprint-notes{position:absolute;left:122%;top:10%;width:calc(100vw*.35);height:70%;display:flex;flex-direction:column;justify-content:space-around;pointer-events:none;opacity:var(--explode);z-index:4}.blueprint-notes span{font:8px 'IBM Plex Mono',monospace;color:#9bd5ec;text-align:right;display:flex;align-items:center;gap:10px}.blueprint-notes span:before{content:'';width:50px;height:1px;background:#5484a8}.blueprint-notes span:nth-child(2){padding-left:58%}.blueprint-notes span:nth-child(3){padding-left:30%}
.code-workspace{height:100%;display:flex;flex-direction:column;background:linear-gradient(135deg,#101e32e8,#09111fee);border:1px solid #314760;box-shadow:10px 12px 0 #0e192a;overflow:hidden}.code-window{flex:1;min-height:0;overflow:hidden;padding:18px 16px;mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 95%,transparent)}.code-window pre{font:10px/1.9 'IBM Plex Mono',monospace;color:#b9d4e8;white-space:pre;tab-size:4;margin:0;will-change:transform}.code-window .code-line{display:block;height:1.9em}.code-window .code-line b{color:#476581;font-weight:400;display:inline-block;width:26px;user-select:none}.code-comment{color:#6a90ad}.code-keyword{color:#c0a4ff}.code-call{color:#89e4ff}.code-string{color:#ade4c5}.typing-caret{display:inline-block;width:6px;height:12px;background:#a6eaff;vertical-align:middle}.code-readout{border-top:1px solid var(--line);padding:12px 16px;display:flex;justify-content:space-between;gap:8px;font:8px 'IBM Plex Mono',monospace;color:#7594b1}.code-readout .quiet-link{font-size:8px}.chapter-description{position:absolute;z-index:6;left:46%;right:7%;bottom:160px;pointer-events:none;opacity:calc(var(--revealed)*.98);padding:18px 20px;background:linear-gradient(90deg,#091321f5,#091321b3);border-left:2px solid var(--discipline);max-width:490px}.chapter-description h2{font:400 23px/1.2 'Space Grotesk',sans-serif;letter-spacing:-.03em;margin:5px 0 6px}.chapter-description p{font-size:10px;line-height:1.7;color:#8fa9c4;max-width:400px;margin:0}.chapter-description .micro{color:var(--discipline);font-size:8px}
.course-bottom{position:absolute;left:5%;right:5%;bottom:12px;z-index:11}.course-chapters{display:flex;border-bottom:1px solid #2b405a;gap:0}.course-chapters button{flex:1;padding:13px 5px 14px 0;border:0;border-bottom:2px solid transparent;color:#6e89a6;background:none;text-align:left;font:10px 'Space Grotesk',sans-serif;cursor:pointer;transition:color .2s,border-color .2s}.course-chapters button span{font:8px 'IBM Plex Mono',monospace;color:#4c6f91;margin-right:9px}.course-chapters button[aria-pressed=true]{border-color:var(--discipline);color:#e5f3ff}.course-chapters button[aria-pressed=true] span{color:var(--discipline)}.course-chapters button:hover{color:#fff}.course-transport{display:flex;align-items:center;gap:25px;margin-top:11px;color:#8eabc6;font:8px 'IBM Plex Mono',monospace}.course-transport label{display:flex;align-items:center;gap:14px;flex:1;max-width:400px}.course-transport input{accent-color:#8be2ff;width:100%;height:15px;cursor:ew-resize}.course-transport button{color:#a6c3dc;border:1px solid #36516e;padding:7px 10px;background:#0c192b;font:8px 'IBM Plex Mono',monospace;cursor:pointer}.course-transport>a{margin-left:auto}.scene-note{font:7px/1.7 'IBM Plex Mono',monospace;color:#536f8e;margin:8px 0 0}.scene-note span{color:#708eac}.course-story.is-reduced{height:calc(100svh - 88px);min-height:680px}.is-reduced .academy-stage{position:relative;top:0;min-height:680px}.is-reduced .typing-caret{opacity:1}
.voice-workspace{height:100%;background:linear-gradient(135deg,#122039c2,#091322d9);border:1px solid #314b6a;position:relative;display:flex;flex-direction:column}.voice-workspace .panel-bar{padding:12px 15px}.signal-dot:before{content:'';display:inline-block;width:4px;height:4px;border-radius:50%;background:#72e3b3;margin-right:5px}.voice-portrait{position:relative;min-height:100px;height:46%;flex-shrink:1;overflow:hidden}.avatar-fallback{position:absolute;inset:0;margin:auto;height:100%;width:100%;opacity:.75}.voice-portrait.has-portrait .avatar-fallback{opacity:0}.voice-portrait canvas{position:absolute;inset:0;width:100%;height:100%}.portrait-caption{position:absolute;bottom:9px;left:0;right:0;text-align:center;font:7px 'IBM Plex Mono',monospace;letter-spacing:.16em;color:#547fa7}.spoken-words{position:relative;padding:10px 20px 13px;border-top:1px solid #263e5b;min-height:110px;flex:1}.spoken-words p{font:400 clamp(14px,1.3vw,20px)/1.65 'Space Grotesk',sans-serif;color:#c6e7fa;margin:0;max-width:95%}.quote-mark{position:absolute;right:16px;top:0;font:60px 'Space Grotesk';color:#416b9255}.voice-wave{display:flex;gap:4px;height:18px;align-items:center;margin-top:10px}.voice-wave i{width:2px;height:4px;background:#6dccec}.voice-wave i:nth-child(3n){height:13px}.voice-wave i:nth-child(2n){height:8px}.is-talking .voice-wave i{animation:voice-pulse .65s ease-in-out infinite alternate;animation-delay:calc(var(--i,0)*.045s)}.is-talking .spoken-words:before{content:'';position:absolute;top:-5px;left:50%;width:5px;height:5px;border-radius:50%;box-shadow:0 -14px 0 #7bd6ff66,0 -30px 0 #7bd6ff33;background:#a5eaff;animation:word-flow 1.1s linear infinite}.intent-status{padding:10px 15px;border-top:1px solid #263e5b;display:flex;justify-content:space-between;gap:10px;align-items:center;font:7px 'IBM Plex Mono',monospace;color:#85b6d1}.intent-status button{font-size:7px}.command-bridge{position:absolute;left:calc(100% + 10px);top:40%;width:130px;display:flex;align-items:center;gap:7px;transform:rotate(90deg);transform-origin:left;font:7px 'IBM Plex Mono',monospace;color:#6b9cb8}.command-bridge i{width:16px;height:1px;background:#3e6b8f}.command-bridge span:last-child{color:#a7e9ca}@keyframes voice-pulse{to{transform:scaleY(.35);opacity:.5}}@keyframes word-flow{to{transform:translateY(12px);opacity:.2}}
.assembly-fallback{position:absolute;width:70%;height:65%;top:5%;left:18%;transform:perspective(1100px) rotateX(57deg) rotateZ(-32deg);z-index:0}.fallback-floor{position:absolute;inset:20% 5%;border:1px solid #6ac7ed66;background:repeating-linear-gradient(90deg,transparent 0 19%,#69c5e744 20%),repeating-linear-gradient(0deg,#0d254133 0 24%,#6bc6ea44 25%);box-shadow:0 18px 0 -1px #10304a33,0 18px 0 0 #5296be66;transform:translateZ(calc(var(--f,0)*68px));opacity:.4}.floor-1{--f:1}.floor-2{--f:2}.floor-3{--f:3}.is-rendered .assembly-fallback,.is-rendered .graph-fallback{opacity:0}.graph-fallback{position:absolute;inset:14% 12% 10%;display:flex;flex-direction:column;gap:10px;align-items:center;transform:perspective(900px) rotateY(-14deg) rotateX(8deg)}.graph-fallback>div{width:210px;border:1px solid #4b83aa;background:#132a4266;padding:12px 15px;color:#a9d8ed;box-shadow:8px 8px 0 #25486255}.graph-fallback b,.graph-fallback span{display:block;font:10px/1.7 'IBM Plex Mono',monospace}.graph-fallback span{font-size:8px;color:#729ab8}.graph-fallback i{color:#72bddc;transform:rotate(90deg)}
.course-intro{background:radial-gradient(ellipse at 90% 15%,#152e4833,transparent 60%)}.course-intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12%;align-items:start}.course-intro-grid h2{max-width:650px;margin:23px 0 30px}.large-copy{font-size:18px;max-width:560px}.course-fit{font:12px 'IBM Plex Mono',monospace;display:flex;align-items:center;gap:10px;margin-top:26px;color:#b0c7d9!important}.course-fit svg{color:#78e5bb;width:18px}.course-enrol-card{border:1px solid #385674;background:linear-gradient(130deg,#14253d88,#0a142299);padding:32px;position:relative;box-shadow:12px 12px 0 -1px #080e19,12px 12px 0 #243f5a}.course-enrol-card:before{content:'+';position:absolute;top:-9px;right:-5px;color:#8be2ff;font:18px 'IBM Plex Mono',monospace}.course-fee{font:400 49px/1.2 'Space Grotesk',sans-serif;letter-spacing:-.06em;display:block;margin:15px 0 5px}.course-enrol-card>p{font-size:11px}.course-enrol-card dl{margin:25px 0}.course-enrol-card dl>div{padding:14px 0;border-top:1px solid var(--line)}.course-enrol-card dt{font:8px 'IBM Plex Mono',monospace;text-transform:uppercase;color:#6e93b2;margin-bottom:7px}.course-enrol-card dd{font-size:12px;color:#c0d1e5;margin:0;line-height:1.75}.course-enrol-card .quiet-link{margin:18px 0 6px;font-size:10px}.course-enrol-card .small-print{font-size:9px}.curriculum-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;margin-top:130px;align-items:start}.sticky-heading{position:sticky;top:150px}.sticky-heading h2{margin:22px 0;font-size:clamp(36px,4vw,58px)}.sticky-heading>p:last-child{max-width:270px;font-size:13px}.curriculum-row{border-top:1px solid #2a415b}.curriculum-row:last-child{border-bottom:1px solid #2a415b}.curriculum-row summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:35px 1fr 20px;align-items:baseline;gap:12px;padding:26px 0}.curriculum-row summary::-webkit-details-marker{display:none}.curriculum-row summary>span{font:9px 'IBM Plex Mono',monospace;color:#6693b4}.curriculum-row h3{font-size:22px;line-height:1.3;max-width:340px}.curriculum-row summary i{font-style:normal;color:#8be2ff;font-size:21px;font-weight:300}.curriculum-row[open] summary i{transform:rotate(45deg)}.curriculum-row>div{padding:0 15px 27px 47px}.curriculum-row p{font-size:13px;margin-bottom:17px}.curriculum-row .micro{font-size:7px;letter-spacing:.06em;color:#668fae}.practice-strip{display:flex;align-items:center;gap:50px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:70px}.practice-strip>span{font:10px 'IBM Plex Mono',monospace;color:#8bc6e6;white-space:nowrap}.practice-strip p{font-size:12px;max-width:720px;margin:0}
.principles-section{background:#0b1423}.principles-section h2{max-width:680px;margin:22px 0 50px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.principle-grid article{border-top:1px solid #36526e;padding-top:22px}.principle-grid h3{font-size:28px;margin:35px 0 13px}.principle-grid p{font-size:13px;max-width:300px}.academy-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:45px}.academy-section-heading h2{margin-top:20px}.academy-section-heading>p{max-width:380px;font-size:13px}.video-empty{display:grid;grid-template-columns:70px 1fr 180px;gap:30px;align-items:center;padding:45px 40px;border:1px solid #324b69;background:linear-gradient(110deg,#12263c66,transparent);position:relative;overflow:hidden}.video-play{border:1px solid #537a98;width:64px;height:64px;display:grid;place-items:center;color:#99e5ff;border-radius:50%;font-size:30px}.video-empty h3{font-size:27px;margin:10px 0 12px}.video-empty p{font-size:12px;max-width:580px;margin-bottom:17px}.video-ghost{width:150px;height:130px;display:grid;place-items:center;transform:perspective(700px) rotateY(-30deg) rotateZ(-10deg);color:#346383}.video-ghost svg{width:120px;height:120px;stroke-width:.7}.video-section>.academy-wrap>.small-print{margin-top:20px;font-size:10px}.video-collection.has-videos{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.video-card{border:1px solid #304966;background:#0d1a2c}.video-frame{aspect-ratio:16/9;display:grid;place-items:center;background:radial-gradient(ellipse at center,#1d3b59,#0a1525);position:relative;overflow:hidden}.video-frame iframe{width:100%;height:100%;border:0;position:absolute;inset:0}.video-frame button{display:flex;flex-direction:column;gap:16px;align-items:center;color:#d0efff;background:none;border:0;cursor:pointer;padding:20px;width:100%;height:100%;justify-content:center;font:11px 'IBM Plex Mono',monospace}.video-frame button:before{content:'▷';display:grid;place-items:center;width:64px;height:64px;border-radius:50%;border:1px solid #749cba;font-size:29px}.video-card h3{font-size:22px;padding:23px 25px 10px}.video-card>p{font-size:12px;padding:0 25px 22px}.video-card .video-external{display:block;padding:0 25px 24px;font:10px 'IBM Plex Mono',monospace;color:#8be2ff}
.study-section{background:#09111f}.study-code-header{display:flex;justify-content:space-between;padding:15px 20px;border:1px solid #304963;border-bottom:0;font:9px 'IBM Plex Mono',monospace;color:#83a5c4}.study-code-header button{font:9px 'IBM Plex Mono',monospace;background:none;color:#99e2ff;border:0;cursor:pointer}.study-code{max-height:420px;overflow:auto;background:#07101d;border:1px solid #304963;padding:25px;color:#bbd5eb;font:11px/1.9 'IBM Plex Mono',monospace;tab-size:4}.study-foot{display:flex;gap:30px;margin:17px 0 22px;font:10px 'IBM Plex Mono',monospace;color:#9edcf7}.study-section .small-print{max-width:1000px;font-size:10px}.node-reference h2{margin:23px 0 50px}.node-reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid #2f4864;margin-bottom:30px}.node-reference-grid article{padding:32px;border-right:1px solid #2f4864}.node-reference-grid article:last-child{border:0}.node-reference-grid h3{font-size:26px;margin:25px 0 18px}.node-reference-grid code{color:#8ce0f7;font:10px/2 'IBM Plex Mono',monospace;display:block;min-height:60px}.node-reference-grid p{font-size:12px;margin-top:25px}.node-reference .quiet-link{margin-right:30px}
.immersive-contact{overflow:hidden;background:radial-gradient(ellipse at 0 70%,#16314955,transparent 70%)}.immersive-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.contact-orbit{position:relative}.contact-orbit h2{font-size:clamp(42px,5vw,72px);margin:24px 0 28px;position:relative}.contact-orbit h2 span{color:#8be2ff}.contact-orbit>p:not(.eyebrow){max-width:380px;font-size:13px;position:relative}.immersive-contact-methods{margin:35px 0;position:relative}.immersive-contact-methods>a{display:flex;align-items:center;gap:20px;border-top:1px solid #2b425e;padding:20px 0;color:#bfd8ef;max-width:400px;font:14px 'Space Grotesk',sans-serif}.immersive-contact-methods>a:last-child{border-bottom:1px solid #2b425e}.immersive-contact-methods svg{width:20px;flex-shrink:0;color:#81bcd8}.immersive-contact-methods>a>svg:last-child{margin-left:auto;width:16px}.immersive-contact-methods small{display:block;color:#6588a8;font:8px 'IBM Plex Mono',monospace;margin-bottom:8px;letter-spacing:.1em}.orbit-ring{position:absolute;width:570px;height:570px;border-radius:50%;border:1px solid #345b7b44;transform:perspective(900px) rotateY(-60deg) rotateX(22deg);left:-170px;top:-40px;z-index:-1}.ring-two{left:-150px;transform:perspective(900px) rotateY(-60deg) rotateX(22deg) translateZ(-55px);border-style:dashed}.immersive-contact .contact-form-card{color:#c5d6e9;border:1px solid #365371;background:linear-gradient(145deg,#16263e,#0e192b);box-shadow:13px 14px 0 -1px #080e19,13px 14px 0 #294361;transform:perspective(1800px) rotateY(-2deg);padding:32px}.immersive-contact .form-heading h2{font-size:28px}.immersive-contact .form-heading .overline{font-size:7px;color:#7299ba}.immersive-contact .field label{color:#a5bdd5;font-size:10px}.immersive-contact input,.immersive-contact select,.immersive-contact textarea,.account-surface input,.account-surface select{background:#0a1627;color:#d5e7f7;border:1px solid #3a516c;border-radius:0;box-shadow:none}.immersive-contact input::placeholder,.immersive-contact textarea::placeholder,.account-surface input::placeholder{color:#52718e}.immersive-contact .field-help,.immersive-contact .optional{color:#6c8da9}.immersive-contact .field input,.immersive-contact .field select{min-height:42px}.immersive-contact .form-details{color:#92b5d2;border-color:#304b66}.immersive-contact .consent{color:#8cabc7;font-size:10px}.immersive-contact .consent button{color:#aae3fa}.immersive-contact form>.btn{background:#a4e8ff;color:#071422;border-color:#a4e8ff}.immersive-contact .form-info{font-size:9px;color:#6a8eac}.immersive-contact .enquiry-result{background:#0a192a;border-color:#365779}.immersive-contact .enquiry-result h3{color:#d2ecff}.immersive-contact .enquiry-result pre{color:#9fc6df;background:#071422;border-color:#324d66}.immersive-contact .enquiry-result .btn{font-size:10px}.next-course-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:28px}.next-course-grid>a{position:relative;display:flex;flex-direction:column;gap:20px;padding:22px 40px 30px 0;border-top:1px solid #35516d}.next-course-grid span{font:8px 'IBM Plex Mono',monospace;color:#6e99b8}.next-course-grid strong{font:400 30px 'Space Grotesk',sans-serif;letter-spacing:-.04em}.next-course-grid .icon{position:absolute;right:0;top:50%;color:#8be2ff}.next-course-grid a:hover strong{color:#8be2ff}
.academy-page .site-footer{background:#070d17;color:#b5c7dd;border-top:1px solid #273b54}.academy-page .site-footer h3{color:#9ac5e3}.academy-page .site-footer p,.academy-page .footer-col a,.academy-page .footer-social a{color:#778faa}.academy-page .footer-col a:hover{color:#d1efff}.academy-page .footer-wordmark{color:#233c56}.academy-page .footer-bottom{color:#56728f;border-color:#263c54}.academy-page .legal-links button{color:#82a3c0}.academy-page .mobile-cta{background:#0d1a2b;border-color:#29435c}.academy-page .mobile-cta .btn.dark{background:#8be2ff;color:#071422}.academy-page .mobile-cta .secondary{color:#a4cce7;border-color:#385777}.academy-page dialog{color:#263b48}
.account-hero{position:relative;overflow:hidden;padding:75px 0 85px;min-height:750px}.account-header{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:55px}.account-header h1{font:400 clamp(44px,5.3vw,76px)/1.03 'Space Grotesk',sans-serif;letter-spacing:-.06em;margin:20px 0}.account-header h1 span{color:#8be2ff}.account-header p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:470px;color:#8faac7}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;position:relative;align-items:start}.account-visual{display:flex;flex-direction:column;align-items:flex-start}.account-orb{width:260px;height:210px;position:relative;margin:0 0 35px;perspective:1000px}.account-orb i{position:absolute;inset:10px 35px;border:1px solid #5d94bd88;border-radius:50%;transform:rotateY(50deg) rotateX(25deg)}.account-orb i:nth-child(2){transform:rotateY(-50deg) rotateX(-25deg)}.account-orb i:nth-child(3){transform:rotateY(15deg) rotateX(65deg)}.account-orb>span{position:absolute;inset:45px 65px;background:linear-gradient(140deg,#31567755,#0a152522);border:1px solid #527fa188;box-shadow:10px 10px 0 #192d4888;display:grid;place-items:center;transform:rotateY(-20deg) rotateX(12deg)}.account-orb svg{width:70px;height:70px;stroke-width:.8;color:#98e5ff}.account-visual h2{font:400 36px/1.15 'Space Grotesk',sans-serif;letter-spacing:-.04em;margin:20px 0}.account-visual p{font-size:13px;line-height:1.8;color:#88a5c2;max-width:350px}.account-surface{background:linear-gradient(130deg,#14243b,#0b1728);border:1px solid #3c5675;padding:34px;box-shadow:13px 14px 0 -1px #080e19,13px 14px 0 #253f5a;position:relative}.account-surface h2{font:400 30px/1.15 'Space Grotesk',sans-serif;letter-spacing:-.04em;margin:15px 0}.account-surface>p,.account-surface form>p{font-size:12px;line-height:1.8;color:#91acc8}.account-surface .field{margin:18px 0}.account-surface .field label{font:10px 'IBM Plex Mono',monospace;color:#a9c3dd;margin-bottom:9px}.account-surface input{padding:12px 14px;min-height:46px;width:100%;font-size:13px}.account-surface input[readonly]{opacity:.6}.account-surface .consent{font-size:10px;color:#99b3cf;margin:22px 0;line-height:1.7}.account-surface .consent input{width:15px;min-height:15px;height:15px;flex-shrink:0;accent-color:#8be2ff;margin-top:3px}.account-tabs{display:flex;gap:20px;border-bottom:1px solid #354e6b;margin-bottom:26px}.account-tabs button{background:none;color:#839cbb;font:12px 'Space Grotesk',sans-serif;border:0;border-bottom:2px solid transparent;padding:0 0 13px;cursor:pointer}.account-tabs button[aria-pressed=true]{color:#c9ebff;border-color:#8be2ff}.account-surface .btn{margin-top:12px}.account-surface .account-divider{padding-top:24px;border-top:1px solid #2e4864;margin-top:25px}.account-subscriptions{list-style:none;padding:0;margin:20px 0}.account-subscriptions li{padding:18px 0;border-top:1px solid #324a66}.account-subscriptions strong{font:400 18px 'Space Grotesk',sans-serif;color:#d0e6f8;display:block}.account-subscriptions span{font:8px 'IBM Plex Mono',monospace;display:inline-block;margin-top:10px;color:#75dcb3}.account-subscriptions a,.account-subscriptions button{display:inline-block;margin-top:14px;margin-right:15px;font:9px 'IBM Plex Mono',monospace;color:#99d8f4;background:none;padding:0;border:0;cursor:pointer}.account-profile-line{display:flex;gap:18px;justify-content:space-between;align-items:start;padding:15px 0;border-bottom:1px solid #2d4561}.account-profile-line span{display:block;font-size:10px;color:#7698b7;margin-top:7px;overflow-wrap:anywhere}.account-profile-line>a{color:#9dd8ed;font:9px 'IBM Plex Mono',monospace;white-space:nowrap}.account-status{font-size:11px;line-height:1.75;color:#a6e4cb;margin-top:17px}.account-status.is-error{color:#ffa8ad}.account-global-status{position:relative;margin-top:30px;max-width:650px;font-size:12px;color:#9fc8df}.account-loading{font:12px 'IBM Plex Mono',monospace;color:#9cc4e3;padding:50px 0}.account-help .academy-wrap{display:flex;align-items:center;justify-content:space-between;gap:60px}.account-help h2{margin:20px 0}.account-help p{max-width:500px;font-size:13px}.account-help .academy-wrap>div:last-child{display:flex;flex-direction:column;gap:23px;color:#c3d9ed;font:14px 'Space Grotesk',sans-serif}.account-surface .small-print{font-size:10px}.account-surface .account-password-help{color:#6e94b3;font-size:10px;margin:8px 0}.account-surface .password-toggle{font:9px 'IBM Plex Mono',monospace;color:#91bcd8;background:none;border:0;padding:6px 0;cursor:pointer}.account-course-select{display:grid;gap:12px;margin-top:25px}.account-course-select button{background:#0a1729;border:1px solid #36516e;text-align:left;padding:16px;color:#c3def3;font:13px 'Space Grotesk',sans-serif;cursor:pointer}.account-course-select button:hover{border-color:#8be2ff}.account-course-select small{display:block;font:8px 'IBM Plex Mono',monospace;color:#7199b8;margin-top:7px}
@media(min-width:1600px){.course-entrance{left:max(5%,calc((100vw - 1440px)/2))}.course-interface{width:31%;left:7%}.code-window pre{font-size:12px}.anatomy-content{padding:35px}.course-interface{height:59%}}
@media(max-height:750px) and (min-width:801px){.academy-stage{min-height:570px}.course-entrance{top:17%}.course-entrance h1{font-size:clamp(39px,4.4vw,66px)}.course-entrance>p:not(.eyebrow){font-size:12px;max-width:340px}.course-entrance .button-row{margin-top:18px}.entrance-note{margin-top:18px}.course-interface{top:14%;height:56%}.anatomy-content{padding:18px}.anatomy-content h2{font-size:27px}.anatomy-content>p:not(.micro){font-size:10px}.anatomy-content ul{padding:11px 0;margin:12px 0;font-size:9px}.chapter-description{bottom:151px;padding:12px 15px}.chapter-description p{font-size:9px}.voice-portrait{height:39%}.spoken-words p{font-size:13px}.code-window pre{font-size:9px}}
@media(max-width:1100px){.academy-wrap{width:calc(100% - 70px)}.course-entrance h1{font-size:52px}.course-topline{gap:18px;font-size:8px}.course-entrance .btn{font-size:9px;padding:10px 12px}.course-interface{left:4%;width:36%}.anatomy-content{padding:20px}.anatomy-content>p:not(.micro){font-size:11px}.anatomy-content h2{font-size:30px}.code-window{padding:15px 10px}.code-window pre{font-size:8px}.chapter-description{left:45%;right:5%}.course-chapters button{font-size:9px}.course-chapters button span{margin-right:5px}.course-intro-grid,.curriculum-layout{gap:7%}.course-enrol-card{padding:25px}.immersive-contact-grid{gap:5%}.immersive-contact .contact-form-card{padding:25px}.immersive-contact .form-grid{column-gap:12px}.video-empty{grid-template-columns:60px 1fr 90px;padding:30px;gap:20px}.video-ghost svg{width:90px}.video-ghost{width:90px}.next-course-grid strong{font-size:26px}.account-grid{gap:6%}.account-surface{padding:27px}}
@media(max-width:800px){.academy-page .site-header{height:76px}.academy-page .nav{background:#0d192a;border-color:#304c6b}.academy-page .nav a{color:#c6d9ee}.academy-wrap{width:calc(100% - 40px)}.academy-section{padding:72px 0}.course-story{height:620svh;scroll-margin-top:76px}.academy-stage{top:76px;height:calc(100svh - 76px);min-height:580px}.course-topline{top:19px;left:6%;right:6%;font-size:7px;gap:10px}.course-topline>span{display:none}.course-topline>div{gap:16px}.course-topline>div a{font-size:7px}.course-entrance{left:6%;top:11%;width:88%}.course-entrance .eyebrow{font-size:8px;margin-bottom:15px}.course-entrance h1{font-size:clamp(39px,7.8vw,63px);max-width:600px;margin-bottom:15px}.course-entrance>p:not(.eyebrow){font-size:12px;max-width:340px;line-height:1.75}.course-entrance .button-row{margin-top:19px;gap:10px}.course-entrance .btn{font-size:9px;min-height:38px;padding:10px 12px}.entrance-note{font-size:7px;margin-top:18px}.course-viewer{inset:34% 0 118px 0;opacity:calc(.75 + var(--revealed)*.25)}.course-viewer:after{background:linear-gradient(180deg,#080e19,transparent 12%),linear-gradient(0deg,#080e19,transparent 10%)}.viewer-label{font-size:6px;top:14px;left:6%;right:6%}.model-summary{left:6%;bottom:2px;gap:3px}.model-summary .micro{font-size:6px}.model-summary strong{font-size:8px}.viewer-axis{right:7%;bottom:17%;transform:scale(.65) rotate(-28deg)}.viewer-cross{font-size:12px}.course-interface{left:6%;right:6%;width:auto;top:10%;height:27%;transform:translateY(calc((1 - var(--revealed))*12px))}.anatomy-panel{max-width:none;box-shadow:6px 7px 0 -1px #080e19,6px 7px 0 #233e5c}.anatomy-panel .panel-bar{padding:9px 13px;font-size:7px}.anatomy-panel .panel-bar span:last-child{font-size:6px}.anatomy-content{padding:13px 15px;display:grid;grid-template-columns:1fr 1fr;gap:3px 20px}.anatomy-content .micro{grid-column:1/-1;font-size:6px}.anatomy-content h2{font-size:24px;margin:7px 0;align-self:start}.anatomy-content>p:not(.micro){font-size:9px;margin:0;grid-column:1;grid-row:3;line-height:1.6}.anatomy-content ul{grid-column:2;grid-row:2/4;font-size:7px;margin:5px 0;padding:6px 0;line-height:1.8}.anatomy-content .quiet-link{display:none}.blueprint-notes{display:none}.course-bottom{left:6%;right:6%;bottom:9px}.course-chapters{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.course-chapters button{font-size:7px;padding:8px 0 10px;line-height:1.5}.course-chapters button span{display:block;font-size:6px;margin:0 0 3px}.course-transport{gap:13px;margin-top:8px;font-size:6px}.course-transport label{gap:8px;max-width:240px}.course-transport button{font-size:6px;padding:6px}.course-transport>a{font-size:6px}.scene-note{font-size:5.5px;margin-top:7px;max-width:95%}.course-story.is-reduced{height:calc(100svh - 76px);min-height:650px}.is-reduced .academy-stage{min-height:650px}.code-workspace{box-shadow:5px 6px 0 #142338}.code-workspace .panel-bar{padding:8px 12px;font-size:6px}.code-window{padding:8px 12px;mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 98%,transparent)}.code-window pre{font-size:8px;line-height:1.7}.code-window .code-line{height:1.7em}.code-readout{padding:6px 12px;font-size:6px}.code-readout .quiet-link{font-size:6px}.chapter-description{left:6%;right:6%;bottom:125px;padding:9px 13px;max-width:none;background:#081221c9}.chapter-description h2{font-size:16px;margin:3px 0 0}.chapter-description p{display:none}.chapter-description .micro{font-size:6px}.python-story .course-viewer,.ai-story .course-viewer{inset:31% 0 150px 0}.python-story .model-summary,.ai-story .model-summary{display:none}.voice-workspace{display:grid;grid-template-columns:29% 71%;grid-template-rows:24px 1fr 27px}.voice-workspace>.panel-bar{grid-column:1/-1;padding:7px 10px;font-size:6px}.voice-workspace>.panel-bar span:last-child{font-size:6px}.voice-portrait{grid-column:1;height:auto;min-height:0;grid-row:2}.portrait-caption{font-size:4px;bottom:4px}.spoken-words{grid-column:2;grid-row:2;border-top:0;border-left:1px solid #263e5b;padding:8px 10px;min-height:70px}.spoken-words p{font-size:10px;line-height:1.6}.quote-mark{font-size:30px;right:7px}.voice-wave{height:9px;margin-top:6px;gap:3px}.voice-wave i{height:2px;width:1px}.voice-wave i:nth-child(3n){height:7px}.voice-wave i:nth-child(2n){height:4px}.intent-status{grid-column:1/-1;font-size:6px;padding:7px 10px}.intent-status button{font-size:6px}.command-bridge{display:none}.is-talking .spoken-words:before{left:0;top:50%;box-shadow:-12px 0 0 #7bd6ff66,-24px 0 0 #7bd6ff33;animation:none}.course-intro-grid,.curriculum-layout,.immersive-contact-grid{grid-template-columns:1fr;gap:45px}.course-intro-grid h2{font-size:42px;max-width:530px}.large-copy{font-size:16px}.course-enrol-card{max-width:560px;width:100%;margin-top:0;padding:28px}.course-enrol-card dl{display:grid;grid-template-columns:1fr 1fr;gap:25px}.curriculum-layout{margin-top:90px;gap:27px}.sticky-heading{position:static}.sticky-heading h2{font-size:40px}.sticky-heading>p:last-child{max-width:450px}.curriculum-row h3{font-size:21px}.curriculum-row summary{padding:24px 0}.practice-strip{margin-top:45px;gap:25px}.practice-strip>span{font-size:8px}.practice-strip p{font-size:11px}.principle-grid{gap:25px}.principle-grid h3{font-size:24px;margin-top:26px}.principle-grid p{font-size:11px}.principle-grid .micro{font-size:8px}.academy-section-heading{gap:30px;align-items:start}.academy-section-heading>p{font-size:11px;max-width:260px}.academy-section-heading h2{font-size:37px}.video-empty{grid-template-columns:48px 1fr;padding:27px 22px;gap:18px}.video-ghost{display:none}.video-play{height:45px;width:45px;font-size:23px}.video-empty h3{font-size:23px}.video-empty p{font-size:11px}.video-empty .micro{font-size:7px}.study-code{font-size:9px;padding:17px;max-height:350px}.study-code-header{font-size:7px;padding:12px}.study-code-header button{font-size:7px}.study-foot{font-size:8px;gap:25px;flex-wrap:wrap}.node-reference-grid article{padding:23px}.node-reference-grid h3{font-size:22px}.node-reference-grid code{font-size:8px}.node-reference-grid p{font-size:11px}.node-reference .quiet-link{font-size:10px;margin-bottom:15px}.contact-orbit h2{font-size:54px}.immersive-contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.immersive-contact-methods>a{font-size:12px;gap:12px}.immersive-contact-methods>a:last-child{grid-column:1/-1;max-width:none}.immersive-contact-methods small{font-size:6px}.contact-orbit>p:not(.eyebrow){max-width:500px}.immersive-contact .contact-form-card{transform:none;padding:30px;max-width:650px;width:100%}.next-course-grid{gap:30px}.next-course-grid strong{font-size:24px}.next-course-grid span{font-size:7px}.account-hero{padding:50px 0 70px}.account-header{align-items:start;margin-bottom:40px}.account-header h1{font-size:52px}.account-header .quiet-link{font-size:8px;margin-top:10px}.account-grid{grid-template-columns:1fr;gap:35px}.account-visual{flex-direction:row;gap:30px;align-items:center}.account-orb{flex:0 0 160px;height:150px;margin:0}.account-orb i{inset:8px 15px}.account-orb>span{inset:35px}.account-orb svg{width:50px;height:50px}.account-visual h2{font-size:27px;margin:10px 0}.account-visual p{font-size:11px}.account-visual .micro{font-size:6px}.account-surface{padding:28px;max-width:650px;width:100%;margin:0 auto}.account-help .academy-wrap{gap:35px}.account-help .academy-wrap>div:last-child{font-size:12px;flex-shrink:0}}
@media(max-width:520px){.academy-wrap{width:calc(100% - 36px)}.academy-section{padding:62px 0}.academy-section h2{font-size:36px}.course-entrance h1{font-size:42px}.course-entrance .eyebrow{font-size:7px}.course-entrance>p:not(.eyebrow){font-size:11px;max-width:310px}.course-entrance{top:10%}.course-topline>div{gap:12px}.course-topline a{font-size:6px}.course-topline>div a:first-child{display:none}.course-interface{top:10%;height:26%}.anatomy-content{gap:3px 12px}.anatomy-content h2{font-size:21px}.anatomy-content>p:not(.micro){font-size:8px}.anatomy-content ul{font-size:6.5px}.anatomy-panel .panel-bar{padding:7px 12px;font-size:6px}.anatomy-panel .panel-bar span:last-child{font-size:5px}.course-chapters button{font-size:6.4px}.course-transport label{max-width:150px}.course-transport>a{font-size:5.5px}.course-transport{gap:8px}.scene-note{font-size:5px}.viewer-label{font-size:5px}.model-summary strong{font-size:7px}.course-enrol-card dl{grid-template-columns:1fr;gap:0}.course-fit{font-size:10px}.course-fee{font-size:47px}.curriculum-row h3{font-size:20px}.curriculum-row summary{grid-template-columns:24px 1fr 15px;gap:9px}.curriculum-row>div{padding-left:33px}.curriculum-row .micro{font-size:6px}.practice-strip{flex-direction:column;align-items:start;gap:12px}.principle-grid{grid-template-columns:1fr;gap:24px}.principle-grid article{display:grid;grid-template-columns:110px 1fr;gap:7px 10px;padding-top:19px}.principle-grid .micro{grid-row:1;grid-column:1;font-size:7px}.principle-grid h3{grid-column:1;font-size:22px;margin:0}.principle-grid p{grid-column:2;grid-row:1/3;max-width:none;font-size:11px;margin:0}.academy-section-heading{display:block;margin-bottom:30px}.academy-section-heading>p{max-width:400px;font-size:12px;margin-top:25px}.academy-section-heading h2{font-size:36px}.video-empty{grid-template-columns:1fr;gap:24px;padding:27px}.video-empty h3{font-size:24px}.video-collection.has-videos{grid-template-columns:1fr}.video-card h3{font-size:22px}.node-reference-grid{grid-template-columns:1fr}.node-reference-grid article{border-right:0;border-bottom:1px solid #2f4864;padding:27px}.node-reference-grid h3{font-size:25px;margin-top:15px}.node-reference-grid code{font-size:10px;min-height:0}.node-reference-grid p{font-size:12px;margin-top:15px}.node-reference h2{margin-bottom:30px}.immersive-contact-methods{grid-template-columns:1fr}.immersive-contact-methods>a{max-width:none}.contact-orbit h2{font-size:48px}.immersive-contact .contact-form-card{padding:24px;box-shadow:7px 8px 0 -1px #080e19,7px 8px 0 #294361}.immersive-contact .form-heading h2{font-size:25px}.next-course-grid{grid-template-columns:1fr;gap:16px}.next-course-grid strong{font-size:27px}.account-header{display:block}.account-header h1{font-size:45px}.account-header .quiet-link{margin-top:20px}.account-visual{gap:15px}.account-orb{flex-basis:115px;height:125px}.account-orb>span{inset:35px 23px}.account-orb svg{width:40px;height:40px}.account-visual h2{font-size:24px}.account-visual p{font-size:10px}.account-surface{padding:25px;box-shadow:7px 8px 0 -1px #080e19,7px 8px 0 #253f5a}.account-help .academy-wrap{display:block}.account-help .academy-wrap>div:last-child{margin-top:30px}.study-foot{font-size:8px}.code-window pre{font-size:7px}.spoken-words p{font-size:9px}.voice-workspace{grid-template-columns:24% 76%}}
@media(prefers-reduced-motion:reduce){.academy-page *, .academy-page *:before,.academy-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.code-window pre{will-change:auto}.course-scene{transition:none}.anatomy-panel{transform:none}}

.account-profile-line>div{min-width:0}.account-profile-line h2{overflow-wrap:anywhere}
