.mathgym-hero{display:flex;min-height:calc(100svh - 4rem);flex-direction:column;overflow-x:clip;background:var(--color-background);color:var(--color-text)}.mathgym-hero-main{display:flex;min-height:600px;flex:1;align-items:center}.mathgym-hero-grid{display:grid;width:100%;max-width:1268px;grid-template-columns:640px 460px;align-items:center;justify-content:center;gap:72px;margin:0 auto;padding:0 48px}.hero-stage-shell{position:relative;width:640px;height:540px;justify-self:center;transform:translate(-20px)}.hero-stage{position:relative;width:640px;height:540px}.hero-scene{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s ease;pointer-events:none}.hero-scene.is-active{opacity:1;transform:none;pointer-events:auto}.hero-scene-caption{position:absolute;right:0;bottom:34px;left:0;color:var(--color-text-secondary);font-size:14.5px;font-weight:600;text-align:center}.hero-scene-caption span{color:var(--color-primary)}.hero-scene-svg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-skill-connectors path:not(.hero-arrowhead){fill:none;stroke:var(--color-secondary-light);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;marker-end:url(#hero-scene-one-arrow)}.hero-skill-connectors .hero-arrowhead{fill:var(--color-secondary-light)}.hero-float-card{position:absolute;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-raised);box-shadow:0 12px 30px -8px #00257024,0 2px 6px #0025700d}.hero-mono-tag{display:flex;align-items:center;gap:6px;color:var(--color-label-ink);font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.1em}.hero-variant-toggle{position:absolute;z-index:5;top:54px;left:50%;display:flex;gap:3px;padding:3px;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-raised);box-shadow:var(--shadow-md);transform:translate(-50%)}.hero-variant-button{padding:5px 11px;border:0;border-radius:var(--radius-full);background:transparent;color:var(--color-label-ink);font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;transition:color var(--transition-fast),background var(--transition-fast);cursor:pointer}.hero-variant-button:hover{color:var(--color-primary)}.hero-variant-button.is-selected{background:var(--color-brand-navy);color:var(--color-text-inverse)}.hero-variant-button.is-selected:hover{color:var(--color-text-inverse)}.hero-problem-variant{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s ease;pointer-events:none}.hero-problem-variant.is-selected{opacity:1;pointer-events:auto}.hero-scene-one .hero-problem-variant,.hero-scene-one .hero-skill-connectors{transform:translateY(57px) scale(1.12);transform-origin:320px 227px}.hero-photo-card{top:76px;left:160px;width:320px;padding:14px 18px 16px;transform:rotate(-1.5deg)}.hero-photo-tag{margin-bottom:8px}.hero-photo-tag svg{flex:none}.hero-math-problem{color:var(--color-text-secondary);font-family:var(--font-math);font-size:16px;line-height:24px}.hero-math-display{margin-top:4px;color:var(--color-text-secondary);font-size:14.5px}.hero-math-display .katex-display{margin:0}.hero-math-problem span{display:block;white-space:nowrap}.hero-skill-tile{position:absolute;top:308px;display:flex;width:164px;height:60px;align-items:center;justify-content:center;border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:12px;background:var(--color-surface-raised);box-shadow:var(--shadow-md);color:var(--color-text);font-size:14px;font-weight:700}.hero-skill-tile-left{left:66px;transform:rotate(-1.5deg)}.hero-skill-tile-center{top:318px;left:238px}.hero-skill-tile-right{left:410px;transform:rotate(1.5deg)}.hero-skill-tile-duo-left{left:148px;transform:rotate(-1.5deg)}.hero-skill-tile-duo-right{left:328px;transform:rotate(1.5deg)}.hero-skill-tile.is-tight{font-size:12.5px}.hero-skill-copy{text-align:center}.hero-skill-copy>span:first-child{display:block;line-height:1.15}.hero-skill-tree-visual,.hero-skill-tree{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0}.hero-skill-tree-visual{transform:translateY(-60px);transform-origin:320px 400px}.hero-skill-tree ul,.hero-skill-tree li{margin:0;padding:0;list-style:none}.hero-tree-connectors path:not(.hero-arrowhead){fill:none;stroke:var(--color-secondary-light);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.hero-tree-connectors path.is-gap-path{stroke:var(--color-tertiary-fixed-dim);stroke-width:2.5}.hero-tree-connectors path.is-gap-branch{stroke:var(--color-tertiary-fixed-dim);stroke-width:2;stroke-dasharray:4 5}.hero-tree-connectors .hero-arrowhead{fill:var(--color-tertiary-fixed-dim)}.hero-tree-node{position:absolute;z-index:1;display:flex;box-sizing:border-box;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid var(--color-primary-50);border-radius:12px;background:var(--color-primary-lightest);box-shadow:0 5px 14px -8px #0025702e;color:var(--color-primary);font-family:inherit;font-size:11.5px;font-weight:700;line-height:1.15;text-align:center;transform:translate(-50%,-50%);pointer-events:none}.hero-tree-node.is-mastered{padding:0;border-radius:var(--radius-full)}.hero-tree-status{display:grid;width:18px;height:18px;flex:none;place-items:center;border-radius:var(--radius-full);background:var(--color-surface-raised)}.hero-tree-status svg{width:13px;height:13px}.hero-tree-node.is-mastered .hero-tree-status{width:30px;height:30px}.hero-tree-node.is-gap{z-index:2;justify-content:flex-start;gap:8px;padding:0 12px;border:1.5px solid var(--color-tertiary-fixed-dim);border-radius:16px;background:var(--color-warning-light);color:var(--color-on-tertiary-fixed-variant);line-height:1.1;text-align:left;box-shadow:0 0 0 6px #febb241f,0 10px 24px -12px #5e420061}.hero-tree-node.is-gap .hero-tree-status{width:28px;height:28px;background:var(--color-tertiary-fixed);font-family:var(--font-math);font-size:18px;font-weight:600}.hero-tree-gap-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.hero-tree-gap-kicker{color:var(--color-accent);font-family:var(--font-mono);font-size:7.5px;font-weight:600;letter-spacing:.11em}.hero-tree-node-label{min-width:0;font-size:12.5px;font-weight:800;overflow-wrap:normal}.hero-train-card{top:345px;left:221px;width:180px;min-height:68px;padding:9px 14px;border-color:var(--color-tertiary-fixed)}.hero-train-tag{margin-bottom:5px;color:var(--color-on-tertiary-fixed-variant);white-space:nowrap}.hero-train-skill{margin-bottom:6px;color:var(--color-text);font-size:12px;font-weight:700}.hero-train-bar{height:6px;overflow:hidden;border-radius:var(--radius-full);background:var(--color-surface-container)}.hero-train-bar span{display:block;width:42%;height:100%;border-radius:var(--radius-full);background:var(--color-tertiary-fixed-dim)}.hero-scene-dots{position:absolute;z-index:10;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:9px}.hero-scene-dot{width:8px;height:8px;padding:0;border:0;border-radius:var(--radius-full);background:var(--color-border-strong);transition:width var(--transition-normal),background var(--transition-normal);cursor:pointer}.hero-scene-dot.is-active{width:22px;background:var(--color-primary)}.mathgym-hero-copy{transform:translate(-42px);text-align:center}.mathgym-hero-eyebrow{display:inline-flex;align-items:center;margin-bottom:20px;padding:6px 13px;border-radius:6px;background:var(--color-brand-navy);color:var(--color-text-inverse);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.mathgym-hero-eyebrow strong{font-weight:700}.mathgym-hero-eyebrow span{font-weight:400}.mathgym-hero-copy h1{color:var(--color-text);font-size:44px;font-weight:800;line-height:1.12;letter-spacing:-.032em}.mathgym-hero-copy h1>span{display:block;text-wrap:balance}.mathgym-hero-copy h1 .hero-heading-accent{color:var(--color-primary)}.mathgym-hero-subheading{max-width:420px;margin:18px auto 0;color:var(--color-text-secondary);font-size:16.5px;line-height:1.6}.mathgym-hero-points{display:inline-flex;flex-direction:column;align-items:flex-start;gap:11px;margin:28px auto 0;padding:0;list-style:none;text-align:left}.mathgym-hero-points li{display:flex;align-items:flex-start;gap:10px;color:var(--color-text-secondary);font-size:16px;font-weight:500;line-height:1.4}.mathgym-hero-points svg{flex:none;margin-top:3px;color:var(--color-primary)}.mathgym-hero-cta-stack{display:flex;width:340px;flex-direction:column;gap:12px;margin:28px auto 0}.hero-cta{display:flex;height:46px;align-items:center;justify-content:center;border-radius:12px;font-size:13.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.hero-cta-primary{border-bottom:4px solid var(--color-brand-navy);background:var(--color-primary);box-shadow:0 8px 20px -8px #004ccb59;color:var(--color-text-inverse)}.hero-cta-primary:hover{background:var(--color-primary-light)}.hero-cta-primary:active{border-bottom-width:2px;transform:translateY(2px)}.hero-cta-brand{text-transform:none}.hero-cta-secondary{border:2px solid var(--color-border);border-bottom-width:4px;background:var(--color-surface-raised);box-shadow:0 4px 12px -6px #00143c1a;color:var(--color-primary)}.hero-cta-secondary:hover{border-color:var(--color-border-strong);color:var(--color-primary-light)}.hero-cta-secondary:active{border-bottom-width:2px;transform:translateY(2px)}.hero-course-strip{flex:none;border-top:2px solid var(--color-border)}.hero-course-strip-inner{display:flex;max-width:1320px;height:92px;align-items:center;justify-content:center;gap:44px;margin:0 auto;padding:0 32px}.hero-course{display:flex;align-items:center;gap:12px}.hero-course-badge{display:flex;width:38px;height:30px;align-items:center;justify-content:center;border:1px solid var(--color-primary-50);border-radius:8px;background:var(--color-primary-lightest);color:var(--color-primary);font-family:var(--font-math);font-size:16px;font-style:italic;font-weight:600}.hero-course.is-new .hero-course-badge{border-color:var(--color-tertiary-fixed);background:var(--color-warning-light);color:var(--color-on-tertiary-fixed-variant)}.hero-course-label{color:var(--color-text-secondary);font-size:13.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.hero-new-pill{margin-left:2px;padding:3px 8px;border-radius:var(--radius-full);background:var(--color-tertiary-fixed-dim);color:var(--color-on-tertiary-fixed-variant);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.08em}@media(max-width:1180px){.mathgym-hero-main{min-height:0}.mathgym-hero-grid{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 24px}.mathgym-hero-copy{order:-1;transform:none}.hero-stage-shell{width:525px;height:443px;transform:none}.hero-stage{transform:scale(.82);transform-origin:top left}.hero-course-strip-inner{justify-content:flex-start;gap:24px;overflow-x:auto}.hero-course{flex:none}.hero-course-label{white-space:nowrap}}@media(max-height:899px)and (min-width:1181px){.mathgym-hero-main{min-height:500px}.hero-stage-shell{width:544px;height:459px}.hero-stage{transform:scale(.85);transform-origin:top left}}@media(max-width:700px){.mathgym-hero-grid{gap:16px;padding:24px 16px 28px}.mathgym-hero-copy{transform:none}.mathgym-hero-copy h1{font-size:34px}.mathgym-hero-subheading{font-size:15px}.mathgym-hero-points li{font-size:14px}.mathgym-hero-cta-stack{width:100%;max-width:340px}.hero-stage-shell{width:100%;height:405px;overflow:hidden;transform:none}.hero-stage{position:absolute;top:0;left:50%;margin-left:-320px;transform:scale(.75);transform-origin:top center}.hero-variant-button{font-size:12px}.hero-skill-connectors{display:none}.hero-scene-one .hero-problem-variant{transform:translateY(40px)}.hero-skill-tile{width:144px;justify-content:center;padding:0 5px;font-size:14px;line-height:1.12;text-align:center}.hero-skill-tile-left{left:91px}.hero-skill-tile-center{left:248px}.hero-skill-tile-right{left:405px}.hero-skill-tile-duo-left{left:164px}.hero-skill-tile-duo-right{left:332px}.hero-skill-tile.is-tight{font-size:13px}.hero-skill-copy{text-align:center}.hero-course-strip-inner{padding:0 16px}}@media(prefers-reduced-motion:reduce){.mathgym-hero *,.mathgym-hero *:before,.mathgym-hero *:after{scroll-behavior:auto!important;transition:none!important}}
