/* Hanz Math / Infinite Perspectives — original real-time geometry and restrained interaction. */
:root{--motion-ink:#0a141b;--motion-night:#080f16;--motion-accent:#a7f4dd;--motion-ease:cubic-bezier(.16,1,.3,1)}
html:before{content:'';position:fixed;top:0;left:0;width:100%;height:2px;z-index:200;background:linear-gradient(90deg,#74b5ee,#a9f3dc);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:transparent;border:1px solid #b9c7b966;border-radius:30px;color:#506a56;min-height:36px;padding:6px 11px;font-size:10px;white-space:nowrap}.motion-toggle-icon{font-size:13px;line-height:1}.motion-toggle:disabled{opacity:.6;cursor:default}.site-header{transition:background .3s,box-shadow .3s}.header-scrolled{box-shadow:0 6px 32px #08131a0a}.header-actions{gap:15px}body:has(.cinematic-hero){background:#f5f7f4}body:has(.cinematic-hero) .announcement{background:#0c1a23;color:#92a8ae;border-bottom:1px solid #95c1d014}body:has(.cinematic-hero) .announcement a{color:#b5eddd}body:has(.cinematic-hero) .site-header{background:#080f16ed;border-bottom:1px solid #ffffff13}body:has(.cinematic-hero) .brand-mark{background:#c4f4e5;color:#102a30}body:has(.cinematic-hero) .brand-name{color:#f1f6f5}body:has(.cinematic-hero) .brand-name span{color:#8bb5ad}body:has(.cinematic-hero) .nav-link,body:has(.cinematic-hero) .login-link{color:#bdcacd}body:has(.cinematic-hero) .header-cta{background:#d3f4e9;color:#17323a;border-color:#d3f4e9}body:has(.cinematic-hero) .motion-toggle{color:#a7bdc2;border-color:#8aa5b833}body:has(.cinematic-hero) .mobile-menu-toggle{color:#d2e9e7}body:has(.cinematic-hero) .mobile-nav{background:#101d26;border-color:#30414a}
/* Primary scene */
.cinematic-hero{position:relative;isolation:isolate;background:#080f16;color:#edf5f4;overflow:hidden}.hero-ambient{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.hero-ambient:after{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.035' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");opacity:.5;mix-blend-mode:screen}.ambient-orb{position:absolute;border-radius:50%;filter:blur(75px);will-change:transform}.ambient-orb-one{width:650px;height:650px;right:-80px;top:-70px;background:radial-gradient(circle,#286c6b38,transparent 65%);animation:ambient-drift 18s ease-in-out infinite alternate}.ambient-orb-two{width:500px;height:500px;left:23%;bottom:-360px;background:#497bb71a;animation:ambient-drift 24s ease-in-out infinite alternate-reverse}.perspective-grid{position:absolute;left:-20%;right:-20%;height:650px;bottom:-460px;background-image:linear-gradient(#8ad9d21a 1px,transparent 1px),linear-gradient(90deg,#8ad9d21a 1px,transparent 1px);background-size:70px 70px;transform:perspective(450px) rotateX(55deg);mask-image:linear-gradient(transparent,#000 35%,transparent);opacity:.6}.cinematic-topline{display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-bottom:1px solid #b0d5e018;font:9px/1.5 'DM Sans',sans-serif;letter-spacing:.13em;color:#6c8b98}.cinematic-topline>span:first-child{display:flex;align-items:center;gap:9px}.cinematic-topline i{height:5px;width:5px;border-radius:50%;background:#a2f2dc;box-shadow:0 0 12px #91eadb}.cinematic-topline>span:last-child{font-size:10px;letter-spacing:.08em;color:#80989e}.cinematic-grid{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:15px;min-height:590px;padding:32px 0 27px}.cinematic-copy{position:relative;z-index:2;padding:24px 0}.cinematic-overline{display:flex;align-items:center;gap:17px;font-size:11px;color:#b4d6d1;letter-spacing:.14em;margin-bottom:24px}.overline-rule{width:48px;height:1px;background:linear-gradient(90deg,#aacfc2,transparent)}.cinematic-copy h1{font-size:clamp(48px,5.9vw,87px);letter-spacing:-.075em;line-height:1.24;font-weight:500;margin:0 0 26px}.title-line{display:block;white-space:nowrap}.title-iridescent{color:#bdf1e4;background:linear-gradient(115deg,#e2fff4 5%,#8ee7cd 42%,#94b9f7 76%,#e2fff4);background-size:170% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.title-period{font-weight:400}.cinematic-copy>p{font-size:13px;line-height:2.15;color:#a0b2bb;letter-spacing:.015em;margin:0 0 31px}.cinematic-actions{display:flex;align-items:center;gap:25px}.btn-luminous{position:relative;background:#d1f4e8;color:#123139;border-radius:50px;padding:8px 9px 8px 22px;font-size:12px;gap:24px;min-height:51px;box-shadow:0 0 0 1px #c4f5e52b,0 4px 36px #87eac317;overflow:hidden}.btn-luminous:before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,#fff9 50%,transparent 70%);transform:translateX(-150%) skewX(-20deg);transition:transform .8s var(--motion-ease)}.btn-luminous:hover{color:#102d33;background:#e5fff5;box-shadow:0 0 35px #9ef3db33;transform:translateY(-2px)}.btn-luminous:hover:before{transform:translateX(150%) skewX(-20deg)}.button-orbit{display:grid;place-items:center;background:#102f34;color:#cefae9;border-radius:50%;height:33px;width:33px;transition:transform .45s var(--motion-ease)}.btn-luminous:hover .button-orbit{transform:rotate(45deg)}.cinematic-text-link{display:flex;align-items:center;gap:12px;font-size:12px;color:#b3c8d0;padding:13px 0;transition:color .2s,gap .3s}.cinematic-text-link:hover{color:#dcfff3;gap:18px}.hero-learning-paths{display:flex;align-items:center;gap:20px;margin-top:45px}.hero-learning-paths>span{font-size:7px;letter-spacing:.13em;color:#69858c;max-width:70px;line-height:1.7}.hero-learning-paths>a{display:flex;align-items:center;gap:8px;color:#bdd0d2;font-size:11px;border-bottom:1px solid #86afa333;padding-bottom:6px;transition:color .25s,border-color .25s}.hero-learning-paths>a:hover{color:#c1ffe5;border-color:#a1e6cd}
.manifold-study{position:relative;margin:0;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.manifold-stage{position:relative;aspect-ratio:1.06;width:100%;isolation:isolate}.manifold-fallback,#manifold-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.manifold-fallback{opacity:1;transition:opacity .5s}.canvas-ready .manifold-fallback{opacity:0}#manifold-canvas{opacity:0;transition:opacity .5s}.canvas-ready #manifold-canvas{opacity:1}.manifold-halo{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(ellipse,#50bdab13,transparent 67%);filter:blur(20px)}.manifold-label{position:absolute;z-index:2;pointer-events:none}.manifold-label-one{left:3%;top:14%}.manifold-label-one>span{font:italic 29px Georgia,serif;color:#ceeae8}.manifold-label-one>small{font-size:7px;letter-spacing:.13em;color:#627f8d;display:block;margin-top:7px}.manifold-label-two{right:3%;bottom:16%;display:flex;align-items:center;gap:7px;border:1px solid #9bc8c033;background:#0b1823a6;backdrop-filter:blur(12px);border-radius:30px;padding:9px 13px;font-size:8px;letter-spacing:.13em;color:#b0d5d2}.manifold-label-two>i{height:4px;width:4px;border-radius:50%;background:#a0e6d8}.manifold-axis{position:absolute;left:8%;bottom:9%;font:10px/1.4 Georgia,serif;color:#6e8c9c;transform:rotate(-13deg)}.manifold-trace{position:absolute;inset:0;pointer-events:none;opacity:.32}.manifold-trace svg{width:100%;height:100%;fill:none;stroke:#9ab6c33d;stroke-width:.7;stroke-dasharray:3 8}.manifold-study figcaption{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#627f8d;font-size:8px;letter-spacing:.1em;padding-top:8px}.manifold-study figcaption>span:last-child{letter-spacing:.05em;color:#8dacae}.cinematic-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b0d5e018;gap:20px;padding:24px 0 28px;font-size:9px;color:#7b969f}.scroll-cue{display:flex;align-items:center;gap:12px;color:#9ab6bf;font-size:9px;letter-spacing:.08em}.scroll-cue-line{height:24px;width:1px;background:linear-gradient(transparent,#bcecd9);position:relative;overflow:hidden}.scroll-cue-line:after{content:'';position:absolute;width:1px;height:9px;background:white;top:0;animation:scroll-line 2.8s ease-in-out infinite}.hero-manifesto{letter-spacing:.2em}.hero-coordinate{font-size:7px;letter-spacing:.07em;text-align:right;color:#526f7f}.hero-coordinate small{display:block;font-size:6px;margin-top:3px;letter-spacing:.22em}
/* A continuous typographic bridge from the immersive opening to the curriculum. */
.concept-ribbon{background:#0d1922;border-top:1px solid #9dc7cc12;border-bottom:1px solid #9dc7cc12;color:#80a8ac;overflow:hidden;padding:19px 0;user-select:none}.concept-ribbon-track{display:flex;align-items:center;width:max-content;animation:concept-flow 42s linear infinite}.concept-ribbon span{font-size:11px;letter-spacing:.22em;padding:0 48px;font-weight:500}.concept-ribbon i{font:italic 24px/1 Georgia,serif;color:#9ddbc7}
/* Learning spreads */
.path-section{padding:105px 0;background:#f5f7f4}.path-intro h2{font-weight:500;font-size:36px}.path-tile{border-radius:14px;background:linear-gradient(145deg,#e7eee8,#eef1e9);border-color:#d8e2dc;position:relative;isolation:isolate;box-shadow:0 5px 15px #223e3010}.path-tile-university{background:linear-gradient(145deg,#e4eaf0,#eef1f0);border-color:#d7dfe5}.path-tile:before,.course-card:before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--light-x,50%) var(--light-y,50%),#d6fff150,transparent 70%);opacity:0;pointer-events:none;z-index:2;transition:opacity .4s}.path-tile:hover:before,.course-card:hover:before{opacity:1}.path-tile-top>svg{transition:transform .5s var(--motion-ease)}.path-tile:hover .path-tile-top>svg{transform:rotate(45deg)}.path-tile:hover,.course-card:hover{transform:perspective(1000px) translateY(-6px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 24px 50px #20363a15}.path-tile,.course-card,.note-preview{transition:transform .7s var(--motion-ease),box-shadow .5s,border-color .4s}.path-illustration:after{transition:transform 1.2s var(--motion-ease)}.path-tile:hover .path-illustration:after{transform:rotate(20deg)}.editorial-courses{background:#edf1ee;border-color:#dce4df}.course-card{border-radius:12px;position:relative;background:#fbfcfa;border-color:#dce5df}.course-card-cover{border-radius:10px 10px 0 0}.course-card-cover .course-art{filter:saturate(.85);transition:transform 1.1s var(--motion-ease),filter .8s}.course-card:hover .course-card-cover .course-art{filter:saturate(1.1);transform:scale(1.055)}.course-card:hover .art-formula{color:#d4ffe9}.section-top h2{font-weight:500}.collection-note{border-color:#d0ddd4}.discovery-section{background:#e7ede9;padding:95px 0 100px;border-top:1px solid #d2ddd5}.discovery-grid{display:grid;grid-template-columns:.86fr 1fr;gap:100px;align-items:center}.discovery-copy h2{font-size:clamp(32px,3.7vw,49px);font-weight:500;line-height:1.45;margin:22px 0}.discovery-copy h2>span{color:#668677}.discovery-copy>p{font-size:13px;line-height:2;color:#6a7e71}.discovery-equation{font:italic 22px Georgia,serif;color:#43685c;margin:29px 0}.discovery-equation>span{font-style:normal;font-size:17px;margin:0 15px;color:#8b9f93}.discovery-copy .text-link{font-size:12px;margin-top:8px}.discovery-section .intuition-lab{background:#122b30;transform:none;box-shadow:0 20px 55px #0b2b2922;border:1px solid #4f777040;border-radius:13px;padding:23px 26px 0}.discovery-section .lab-top{color:#9dbbb3;border-color:#53716d}.discovery-section .lab-caption h2{color:#d5f0e9}.discovery-section .lab-caption>span{color:#87a8a3}.discovery-section .lab-plot #curve-path{stroke:#a1e7ce}.discovery-section .lab-plot #tangent-line{stroke:#83aaef}.discovery-section .lab-plot #graph-dot{fill:#caf6e1;stroke:#173b38}.discovery-section .lab-plot .interactive-value{border-color:#648c85;color:#a4c3b9}.discovery-section .lab-plot .interactive-value strong{color:#b9f1dc}.discovery-section .lab-plot input[type=range]{accent-color:#b2ebd5}.discovery-section .lab-bottom{border-color:#53716d;color:#9ebbb1}.editorial-method{background:#0c1b23}.method-title h2>span{color:#a9e2ce}.method-title>.eyebrow{color:#7fa8a4}.method-panel{border-color:#3b5c61}.method-panel>div{color:#86b8b5}.method-panel b{color:#a3ddca}.method-title>p,.method-panel p{color:#9db4b8}.editorial-notes{background:#f5f7f4}.note-preview{border-radius:10px;background:#e9eee8;border-color:#d0ded2;box-shadow:12px 15px 0 #dce6dc;transform:rotate(-2deg)}.note-preview:hover{transform:perspective(1000px) rotate(-1deg) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:16px 22px 0 #dce6dc}.editorial-finale{background:#d5ede2;border-top-color:#bce0ce;position:relative;overflow:hidden}.editorial-finale:before{content:'∞';position:absolute;left:-4%;top:-90px;font:540px/1 Georgia,serif;color:#aacbb845;pointer-events:none;transform:rotate(-20deg)}.editorial-finale>.container{position:relative}.finale-star{color:#4b7c6b}.site-footer{background:#0c1b23}.site-footer .brand-mark{background:#c4eadb;color:#123035}.site-footer .brand-name span{color:#a0c4bc}.footer-links a,.footer-main>div:first-child p{color:#9cb5b5}.footer-bottom{border-color:#2b454b}.site-footer a:hover{color:#c6ffea}.btn:not(.btn-luminous){transition:transform .45s var(--motion-ease),background .3s,box-shadow .3s}.btn svg,.text-link svg{transition:transform .4s var(--motion-ease)}.btn:hover>svg,.text-link:hover>svg{transform:translate(3px,-2px)}
/* Progressive entrance motion never hides content unless an observer is installed. */
.motion-reveal{transition:opacity .85s var(--motion-ease) var(--reveal-delay,0ms),transform 1s var(--motion-ease) var(--reveal-delay,0ms),box-shadow .5s,border-color .4s}.motion-pending{opacity:0;transform:translateY(28px)}.motion-pending:focus-within{opacity:1;transform:none}.cinematic-overline,.cinematic-copy .title-line,.cinematic-copy>p,.cinematic-actions,.hero-learning-paths,.manifold-study{animation:opening-rise 1.15s var(--motion-ease) both}.cinematic-overline{animation-delay:.04s}.cinematic-copy .title-line:first-child{animation-delay:.12s}.cinematic-copy .title-line:nth-child(2){animation-delay:.23s}.cinematic-copy>p{animation-delay:.34s}.cinematic-actions{animation-delay:.42s}.hero-learning-paths{animation-delay:.5s}.manifold-study{animation-duration:1.8s;animation-delay:.15s}.cinematic-copy .title-iridescent{animation:opening-rise 1.15s var(--motion-ease) .23s both,color-flow 15s linear 1.5s infinite}
@keyframes opening-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes ambient-drift{to{transform:translate(40px,25px) scale(1.15)}}@keyframes color-flow{to{background-position:170% 0}}@keyframes concept-flow{to{transform:translateX(-50%)}}@keyframes scroll-line{0%{transform:translateY(-12px)}70%,100%{transform:translateY(33px)}}
@media(min-width:1450px){.cinematic-grid{min-height:630px;gap:40px}.cinematic-copy h1{font-size:87px}}
@media(max-width:1160px){.cinematic-grid{min-height:550px;gap:8px}.cinematic-copy h1{font-size:6.3vw}.cinematic-copy>p{font-size:12px}.cinematic-actions{gap:20px}.hero-learning-paths{gap:15px}.discovery-grid{gap:60px}.motion-toggle-label{display:none}.motion-toggle{width:34px;padding:7px}.header-actions{gap:12px}}
@media(max-width:950px){.cinematic-grid{min-height:510px}.cinematic-topline{font-size:8px}.cinematic-topline>span:last-child{font-size:9px}.cinematic-copy h1{font-size:6.25vw}.cinematic-overline{font-size:9px}.cinematic-copy>p{font-size:11px}.cinematic-actions{gap:15px}.btn-luminous{font-size:11px;padding-left:17px;gap:14px}.cinematic-text-link{font-size:10px;gap:6px}.hero-learning-paths{gap:13px}.hero-learning-paths>span{font-size:6px;max-width:60px}.hero-learning-paths>a{font-size:10px}.manifold-study figcaption{font-size:6px;gap:8px}.header-actions{gap:14px}.discovery-grid{gap:35px}.discovery-section .intuition-lab{padding-inline:20px}.discovery-copy>p{font-size:12px}.discovery-equation{font-size:20px}.discovery-equation>span{margin:0 9px}}
@media(max-width:700px){.motion-toggle{min-height:32px;width:32px;font-size:10px}.header-actions{gap:8px}.cinematic-topline{padding:23px 0;font-size:7px;letter-spacing:.09em}.cinematic-topline>span:last-child{font-size:8px;letter-spacing:0}.cinematic-grid{grid-template-columns:1fr;gap:0;padding:36px 0 21px;min-height:0}.cinematic-copy{padding:0}.cinematic-overline{font-size:10px;margin-bottom:21px}.cinematic-copy h1{font-size:clamp(48px,10vw,72px);margin-bottom:24px}.cinematic-copy>p{font-size:12px;margin-bottom:27px;line-height:2}.cinematic-actions{gap:23px}.btn-luminous{font-size:12px;padding-left:20px;gap:24px}.cinematic-text-link{font-size:11px}.hero-learning-paths{margin-top:30px;gap:20px}.hero-learning-paths>span{font-size:7px;max-width:72px}.hero-learning-paths>a{font-size:11px}.manifold-study{width:min(100%,460px);margin:5px auto 0;align-self:auto}.manifold-stage{aspect-ratio:1.3}.manifold-study figcaption{padding-top:0;font-size:7px}.manifold-label-one{top:14%;left:5%}.manifold-label-one>span{font-size:23px}.manifold-label-one>small{font-size:6px}.manifold-label-two{font-size:7px;padding:7px 10px;right:0}.manifold-axis{font-size:9px;bottom:5%}.cinematic-bottom{padding:19px 0 22px;margin-top:12px}.hero-coordinate{display:none}.hero-manifesto{font-size:8px;letter-spacing:.12em}.scroll-cue{font-size:8px}.concept-ribbon{padding:15px 0}.concept-ribbon span{font-size:9px;padding:0 30px}.concept-ribbon i{font-size:20px}.ambient-orb-one{right:-170px;top:170px}.ambient-orb-two{left:-160px;bottom:-350px}.path-section{padding:63px 0}.path-intro h2{font-size:31px}.discovery-section{padding:61px 0}.discovery-grid{grid-template-columns:1fr;gap:34px}.discovery-copy h2{font-size:35px}.discovery-copy>p{font-size:12px}.discovery-equation{font-size:22px;margin:24px 0}.discovery-section .intuition-lab{margin:0;padding-inline:23px}.manifold-study{animation-delay:.2s}.cinematic-copy .title-line,.cinematic-copy>p,.cinematic-actions,.hero-learning-paths{animation-duration:.9s}.editorial-finale:before{font-size:340px;top:0}}
@media(max-width:390px){.cinematic-topline>span:last-child{font-size:7px}.cinematic-copy h1{font-size:12.4vw}.cinematic-overline{font-size:9px}.cinematic-actions{gap:17px}.btn-luminous{padding-left:18px;gap:17px}.cinematic-text-link{font-size:10px}.hero-learning-paths{gap:15px}.hero-learning-paths>a{font-size:10px}.manifold-study figcaption{font-size:6px}.cinematic-copy>p{font-size:11px}.motion-toggle{width:30px;min-height:30px}}
html[data-motion=paused] *,html[data-motion=paused] *:before,html[data-motion=paused] *:after{animation-play-state:paused!important}html[data-motion=paused] .motion-pending{opacity:1;transform:none}html[data-motion=paused] .cinematic-overline,html[data-motion=paused] .cinematic-copy .title-line,html[data-motion=paused] .cinematic-copy>p,html[data-motion=paused] .cinematic-actions,html[data-motion=paused] .hero-learning-paths,html[data-motion=paused] .manifold-study{animation:none;opacity:1;transform:none}html[data-motion=paused] .motion-reveal{transition:none}html[data-motion=paused] .course-card:hover,html[data-motion=paused] .path-tile:hover{transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-pending{opacity:1;transform:none}.ambient-orb{will-change:auto}.manifold-fallback{opacity:1!important}#manifold-canvas{display:none}.course-card:hover,.path-tile:hover{transform:none}}
.concept-ribbon-group{display:flex;align-items:center;justify-content:space-around;min-width:100vw;flex-shrink:0}
