/* Home: shared spacing, a focused dashboard and lightweight SVG motion. */
.container{padding-inline:clamp(20px,4vw,80px)}
.header-inner{gap:24px}.brand-mark{border-radius:12px;background:var(--ink);color:var(--bg)}
.site-nav a{font-size:13px;padding:9px 12px}.header-cta{font-size:12px;min-height:38px}
.hero{padding-block:72px 80px;background:#11212d;color:#f5f5f0;border-bottom:1px solid #2c3e4b}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 15% 20%,#f0753520,transparent 55%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:auto,64px 64px,64px 64px;pointer-events:none}
.hero .fx{display:none}.hero-grid{gap:clamp(32px,5vw,100px);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.hero .eyebrow{color:#b8c8d1;font-size:12px;letter-spacing:.08em;margin-bottom:28px}
.hero-kicker{display:flex;align-items:center;gap:8px;font:10px var(--font-mono);letter-spacing:.12em;color:#e8a481;margin-bottom:18px}
.hero-kicker span,.lab-label>span,.local-status i{width:6px;height:6px;background:#7ed8bc;border-radius:50%;display:inline-block;flex:none}
.hero h1{font-size:clamp(2.9rem,5.3vw,6rem);max-width:850px;line-height:1.03;font-weight:700;letter-spacing:-.065em;margin-bottom:26px}
.hero h1 em{display:block;color:#ff996a;background:none;animation:none;letter-spacing:-.055em}
.hero .lead{max-width:590px;color:#b6c7d3;font-size:clamp(15px,1.2vw,18px);line-height:1.85}
.hero .btn-primary{background:#ff9868;color:#17232d}.hero .btn-primary:hover{background:#ffb38c}
.hero .btn-secondary{color:#e9f0f5;background:#ffffff08;border-color:#ffffff26}
.hero-actions{margin-bottom:32px}.hero .btn{min-height:48px;font-size:14px}.btn-primary::after{display:none}
.hero-stats{max-width:550px;gap:0}.hero-stats div{background:none;border:0;border-radius:0;padding:0 24px;border-left:1px solid #ffffff25}
.hero-stats div:first-child{padding-left:0;border:0}.hero-stats b{font-weight:600;font-size:28px;color:#fff}.hero-stats span{color:#9eafbc;font-size:12px}
.convergence-card{position:relative;padding:28px 30px;background:#182d3c;border-color:#ffffff1c;color:#eff5f8;border-radius:24px;box-shadow:0 30px 80px #0003;overflow:hidden}
.convergence-card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#ffb38c70,transparent)}
.convergence-card .demo-top{margin-bottom:26px}.lab-label{display:flex;gap:8px;align-items:center;font:11px var(--font-mono);letter-spacing:.12em;color:#9bb3c3}.lab-tag{font:10px var(--font-mono);color:#c8d8e2;border:1px solid #ffffff20;border-radius:6px;padding:5px 8px}
.convergence-card h2{font-size:clamp(18px,2vw,26px);font-weight:600;letter-spacing:-.035em}.lab-subtitle{font-size:13px;color:#a3b7c5;margin-top:8px}
.convergence-plot{width:100%;margin:12px 0 0;overflow:hidden}.plot-curve{stroke-dasharray:650;stroke-dashoffset:650;animation:draw-curve 1.8s .4s ease forwards}.plot-tangent{animation:tangent-dash 12s linear infinite}.root-halo{transform-box:fill-box;transform-origin:center;animation:root-pulse 3s ease-in-out infinite}
#iteration-point{transition:cx .85s cubic-bezier(.22,1,.36,1)}
.iteration-readout{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ffffff16;padding-top:20px;font-family:var(--font-mono)}
.iteration-readout>div>span{display:block;font-size:9px;letter-spacing:.1em;color:#9bb3c3;margin-bottom:7px}.iteration-readout>div>span b{color:#7ed8bc;margin-left:8px}
.iteration-readout strong{font-size:clamp(20px,2.6vw,32px);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.error-readout{font-size:8px;color:#9bb3c3;text-align:right;letter-spacing:.06em}.error-readout b{display:block;font-size:16px;font-weight:500;color:#7ed8bc;margin-top:10px;letter-spacing:0}
.iteration-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.iteration-track{display:flex;gap:7px}.iteration-track i{width:22px;height:3px;border-radius:5px;background:#ffffff20;transition:background .4s}.iteration-track i.active{background:#ff9868}
#motion-toggle{display:flex;align-items:center;gap:8px;font-size:11px;color:#aec3d2;background:none;border:1px solid #ffffff20;border-radius:7px;padding:7px 10px;cursor:pointer;min-height:32px}.lab-explore{display:flex;justify-content:space-between;font-size:12px;border-top:1px solid #ffffff16;padding-top:16px;margin-top:16px;color:#d7e5ed}.lab-explore:hover{color:#ffb38c}
.motion-paused .plot-tangent,.motion-paused .root-halo{animation-play-state:paused}
.learning-dashboard{padding-block:40px 48px}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dashboard-heading .eyebrow{font:10px var(--font-mono);letter-spacing:.12em;margin-bottom:8px}.dashboard-heading h2{font-size:26px;letter-spacing:-.04em}.local-status{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px}.local-status i{background:var(--ok)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:20px}
.progress-panel{margin:0;box-shadow:none;padding:26px;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;border-radius:18px}.progress-panel .ring{width:76px;height:76px}.progress-panel .ring b{font-size:18px}.panel-label{font:9px var(--font-mono);letter-spacing:.1em;color:var(--muted)}.pp-text h3{font-size:17px;margin-top:6px}.pp-text p{font-size:12px;margin-top:6px}.pp-dots a{width:25px;height:25px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;font:10px var(--font-mono);color:var(--muted);background:var(--surface-2);transition:background .2s}.pp-dots a:hover{border-color:var(--accent);color:var(--accent)}.pp-dots a.complete{background:var(--ok);color:var(--surface);border-color:var(--ok)}.pp-dots a.started{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.progress-panel .btn{font-size:12px;padding-inline:14px;white-space:nowrap}
.dashboard-metrics{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:24px 0}.dashboard-metrics>div{display:flex;flex-direction:column;padding-inline:24px;gap:10px}.dashboard-metrics>div+div{border-left:1px solid var(--line)}.metric-icon{color:var(--accent);font-size:14px}.dashboard-metrics strong{font:600 30px var(--font-head);letter-spacing:-.05em}.dashboard-metrics small{font:12px var(--font-body);color:var(--muted);letter-spacing:0;margin-left:5px}.dashboard-metrics>div>span:last-child{font-size:11px;color:var(--muted)}
.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.quick-links a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:16px;border-radius:12px;background:var(--surface);font-size:12px;transition:background .2s,border-color .2s,transform .2s}.quick-links a>i{color:var(--accent)}.quick-links a>b{margin-left:auto;font-weight:400;color:var(--muted)}.quick-links a:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-2px)}
section{padding-block:64px}.section-head{max-width:850px}.section-head h2{font-size:clamp(24px,2.8vw,40px);letter-spacing:-.045em}.section-head>p:last-child{line-height:1.8;font-size:15px}.eyebrow{font-size:11px;letter-spacing:.08em}
.chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.chapter-card.live{border-width:1px;border-color:var(--line);box-shadow:none;border-radius:18px;padding:26px;gap:16px}.chapter-card.live:hover{border-color:var(--accent);box-shadow:0 12px 32px #14212e0d;transform:translateY(-5px)}.chapter-card .num{font-size:12px;letter-spacing:.1em}.chapter-card .ico{width:48px;height:48px}.chapter-card h4{font-size:18px;line-height:1.4}.chapter-card .card-cta{background:none;color:var(--accent);justify-content:space-between;padding:12px 0 0;border-top:1px solid var(--line);border-radius:0;font-size:12px}.card-cta::after{display:none}.chapter-card .card-bar{height:4px}.path-group:last-child .chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.m1-banner{border-radius:20px;background:linear-gradient(120deg,#172c3b,#203b49);margin-bottom:32px}.m1-feats div{border-color:#ffffff17}.scene-wrap{box-shadow:none;border:1px solid var(--line)}
.scene-sec{padding-top:48px}.scene{max-height:470px}.toolbar{position:sticky;top:calc(var(--header-h) + 8px);z-index:5;background:var(--bg);padding-block:12px}.chapter{border-radius:12px}.footer-grid{padding-top:12px}
@keyframes draw-curve{to{stroke-dashoffset:0}}@keyframes tangent-dash{to{stroke-dashoffset:-96}}@keyframes root-pulse{50%{transform:scale(1.5);opacity:.5}}
@media(min-width:1600px){.hero{padding-block:90px}.convergence-card{padding:34px 40px}.convergence-plot{max-height:320px}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}
@media(max-width:1179px){.site-nav a{font-size:15px;padding:12px}.dashboard-grid{grid-template-columns:1fr}.dashboard-metrics{padding-block:18px}.dashboard-metrics>div{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:16px}.dashboard-metrics strong{font-size:25px}}
@media(max-width:959px){.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(3rem,8vw,5rem);max-width:750px}.hero .lead{max-width:700px}.convergence-card{max-width:none}.convergence-plot{max-height:270px}.quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-block:48px}.hero-grid{gap:36px}}
@media(max-width:600px){.container{padding-inline:20px}.header-inner{gap:10px}.brand-text small{font-size:10px}.brand-text strong{font-size:17px}.hero .eyebrow{font-size:10px;margin-bottom:24px}.hero-kicker{font-size:8px;letter-spacing:.08em}.hero h1{font-size:clamp(2.8rem,12vw,4rem)}.hero .lead{font-size:14px}.hero-stats div{padding-inline:16px}.hero-stats b{font-size:24px}.hero-stats span{font-size:10px}.convergence-card{padding:22px 18px;border-radius:18px}.convergence-card h2{font-size:21px}.convergence-card .demo-top{margin-bottom:20px}.lab-subtitle{font-size:11px}.iteration-readout strong{font-size:24px}.dashboard-heading{align-items:flex-start;flex-direction:column;gap:12px}.dashboard-heading h2{font-size:24px}.progress-panel{grid-template-columns:auto minmax(0,1fr);padding:20px;gap:16px}.progress-panel .btn{grid-column:1/-1}.progress-panel .ring{width:64px;height:64px}.pp-text h3{font-size:15px}.pp-text p{font-size:11px}.panel-label{font-size:8px}.pp-dots{gap:4px}.pp-dots a{width:23px;height:23px}.dashboard-metrics>div{display:flex;align-items:flex-start;padding-inline:18px;gap:8px}.dashboard-metrics>div>span:last-child{font-size:10px}.quick-links{gap:8px}.quick-links a{padding:14px 10px;font-size:10px;gap:7px}.quick-links a>b{display:none}.chapter-grid,.path-group:last-child .chapter-grid{grid-template-columns:1fr}.chapter-card.live{padding:22px}.toolbar{position:static}.learning-dashboard{padding-block:32px}section{padding-block:44px}.m1-banner{padding:24px}.m1-feats{grid-template-columns:1fr 1fr}.m1-feats div{padding:10px;font-size:11px}.hero-actions{margin-bottom:30px}.hero-actions .btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){.plot-curve{stroke-dashoffset:0}.hero *,.convergence-card *{animation:none!important;transition:none!important}.root-halo{opacity:.5}}
@media(scripting:none){.reveal{opacity:1;transform:none}}
