.hub .ins-hero{position:relative;display:flex;align-items:center;overflow:hidden;isolation:isolate}.hub .ins-hero-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px;padding-block:56px 40px}.hub .ins-glow{position:absolute;inset:-20% -10% 0 30%;z-index:-1;pointer-events:none;filter:blur(80px);opacity:.45;background:radial-gradient(40% 40% at 40% 35%,rgb(47 124 246/.4),transparent),radial-gradient(40% 40% at 70% 40%,rgb(255 199 44/.14),transparent),radial-gradient(40% 40% at 55% 75%,rgb(32 201 151/.4),transparent);-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}:root[data-theme=light] .hub .ins-glow{opacity:.25}.hub .ins-chip{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 8px;border-radius:99px;border:1px solid var(--edge);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:13px;color:var(--ink-2);animation:hub-fade 1s both}.hub .ins-chip .dt-logo{margin-left:6px}.hub .ins-hero h1{font-size:clamp(42px,5.6vw,84px);line-height:.94;letter-spacing:-.055em;font-weight:800;margin:24px 0}.hub .ins-hero h1 .line{display:block;overflow-y:clip;padding-bottom:.22em;margin-bottom:-.16em}.hub .ins-hero h1 .line>span{display:inline-block;animation:hub-rise 1.1s var(--ease) both}.hub .ins-hero h1 .line:nth-child(2)>span{animation-delay:.12s}.hub .ins-lead{font-size:clamp(17px,1.5vw,19px);color:var(--ink-2);max-width:32em;margin:0;line-height:1.55;animation:hub-fade 1s .35s both}.hub .ins-lead+.ins-lead{margin-top:14px}.hub .ins-ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:32px;animation:hub-fade 1s .6s both}.hub .ins-social{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:var(--ink-2);border:1px solid var(--rule);background:var(--card);transition:color .2s,border-color .2s}.hub .ins-social:hover{color:var(--ink);border-color:var(--edge)}.hub .ins-flow{--pf-blue:#2f7cf6;--pf-teal:#20c997;--pf-gold:#ffc72c;--pf-silver:#c3c3d0;--pf-bronze:#e39a6c;--pf-screen:#090b12;position:relative;aspect-ratio:5/4;min-height:440px;max-height:calc(100svh - 150px);animation:hub-fade 1.2s .2s backwards}:root[data-theme=light] .hub .ins-flow{--pf-blue:#1f5fd6;--pf-teal:#107356;--pf-gold:#a87400;--pf-silver:#6b6b78;--pf-bronze:#a3501f;--pf-screen:#fff}.hub .ins-flow canvas{position:absolute;inset:0;width:100%;height:100%}.hub .ins-sc{aspect-ratio:10/9;user-select:none;-webkit-user-select:none}.hub .ins-sc>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.hub .ins-sc-line{fill:none;stroke:var(--edge);stroke-width:1.6}.hub .ins-sc-lit{fill:none;stroke:url(#ins-sc-bow);stroke-width:2.6;stroke-linecap:round;opacity:0;transition:opacity .5s}.hub .ins-sc-lit.on{opacity:1}.hub .ins-sc-dir{fill:none;stroke:var(--ink-3);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.hub .ins-sc :is(.ins-sc-one,.ins-sc-many){font:700 12px var(--font-mono);fill:var(--ink-3)}.hub .ins-sc-dot{fill:url(#ins-sc-bow);fill-opacity:.55}.hub .ins-sc-dot.on{fill-opacity:1}.hub :is(.ins-sc-fact,.ins-sc-dim){position:absolute;left:0;top:0;z-index:1;width:186px;border-radius:12px;border:1px solid var(--edge);background:var(--card);box-shadow:var(--sh-box);font-size:12.5px;cursor:grab;touch-action:none;transition:box-shadow .3s,border-color .3s}.hub .ins-sc.ready :is(.ins-sc-fact,.ins-sc-dim){animation:ins-sc-in .7s var(--ease) calc(.2s + var(--n, -1) * .1s + .1s) backwards}@keyframes ins-sc-in{0%{opacity:0;scale:.86}}.hub .ins-sc :is(.ins-sc-fact,.ins-sc-dim).held{z-index:5;cursor:grabbing;box-shadow:var(--sh-box),0 30px 60px -28px rgb(0 0 0/.7)}.hub .ins-sc-h{display:flex;align-items:center;gap:7px;padding:9px 12px;border-bottom:1px solid var(--rule);border-radius:12px 12px 0 0;background:color-mix(in srgb,var(--ink) 4%,transparent);font:700 11px var(--font-mono);letter-spacing:.02em;color:var(--ink);white-space:nowrap}.hub .ins-sc-h span{min-width:0;overflow:hidden;text-overflow:ellipsis}.hub .ins-sc-h small,.hub .ins-sc-h svg{flex:none;color:var(--ink-3)}.hub .ins-sc-h small{margin-left:auto;font:inherit;font-weight:600}.hub .ins-sc ul{margin:0 0 8px;padding:6px 0 0;list-style:none;max-height:69px;overflow:hidden;transition:max-height .55s var(--ease)}.hub .ins-sc li{padding:2px 12px;line-height:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-2)}.hub .ins-sc li i{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:2px;vertical-align:1px}.hub .ins-sc li span{margin-right:7px;font-weight:650;color:var(--ink)}.hub .ins-sc-dim.on{z-index:3;border-color:transparent;background:linear-gradient(var(--card),var(--card)) padding-box,var(--rainbow) border-box;box-shadow:var(--sh-box),0 24px 60px -30px color-mix(in srgb,var(--ink) 40%,transparent)}.hub .ins-sc-dim.on ul{max-height:153px}.hub .ins-sc ul:has(+.ins-sc-more){margin-bottom:0}.hub .ins-sc-more{display:block;max-height:25px;overflow:hidden;padding:2px 12px 8px;font-size:inherit;line-height:17px;color:var(--ink-3);transition:max-height .4s var(--ease),opacity .3s,padding .4s}.hub .ins-sc-dim.on .ins-sc-more{max-height:0;opacity:0;padding-block:0 8px}.hub .ins-sc-fact{z-index:2;width:196px;border-color:transparent;background:linear-gradient(var(--card),var(--card)) padding-box,var(--rainbow) border-box;background-size:100% 100%,200% 100%;animation:hub-shimmer 8s linear infinite}.hub .ins-sc.ready .ins-sc-fact{animation:ins-sc-in .7s var(--ease) .1s backwards,hub-shimmer 8s linear infinite}.hub .ins-sc-fact ul{max-height:none}.hub .ins-sc-fact li span{margin-right:8px;font:500 11.5px var(--font-mono);color:var(--ink-3)}.hub .ins-sc-fact li{font-weight:650;color:var(--ink)}.hub .ins-sc-key{display:flex;align-items:center;gap:7px;font:500 11.5px var(--font-mono);color:var(--ink-3)!important;transition:color .3s}.hub .ins-sc-key svg{flex:none}.hub .ins-sc-key.on{color:var(--ink)!important;font-weight:700;box-shadow:inset 2px 0 0 var(--ink)}@media (prefers-reduced-motion:reduce){.hub .ins-sc :is(.ins-sc-fact,.ins-sc-dim){animation:none!important}}@media (max-width:640px){.hub .ins-sc{aspect-ratio:auto;height:620px}.hub :is(.ins-sc-fact,.ins-sc-dim){width:152px;font-size:11.5px}.hub .ins-sc-h{font-size:10.5px;gap:6px;padding-inline:10px}.hub .ins-sc-fact{width:168px}.hub .ins-sc-fact li:not(.ins-sc-key){display:none}}.hub .ins-flow-tip{position:absolute;z-index:1;left:0;top:0;width:260px;padding:12px 14px;border-radius:14px;border:1px solid var(--edge);background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 40px rgb(0 0 0/.3);pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - 12px));transition:opacity .2s}.hub .ins-flow-tip.on{opacity:1}.hub .ins-flow-tip b{display:flex;align-items:center;gap:8px;font-size:15px;letter-spacing:-.01em}.hub .ins-flow-tip i{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}.hub .ins-flow-tip small{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:var(--ink-2)}.hub .ins-focus{margin-top:36px}.hub .sec2 .ins-list+.ins-topics{margin-top:0}.hub .ins-hero+.wrap>.ins-stats{margin-top:24px}.hub .ins-hero+.wrap>.sec2:first-child{margin-top:48px}.hub .ins-focus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.hub .ins-card,.hub .ins-topic{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:var(--r-big);overflow:hidden;isolation:isolate;background:var(--card);border:1px solid color-mix(in srgb,var(--a) 18%,var(--rule));box-shadow:var(--sh-box);scroll-margin-top:90px}.hub .ins-card:before,.hub .ins-topic:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--a);z-index:-1}.hub .ins-card:after{content:"";position:absolute;inset:-40% -30% auto auto;width:70%;aspect-ratio:1;border-radius:50%;z-index:-1;background:radial-gradient(closest-side,color-mix(in srgb,var(--a) 16%,transparent),transparent)}.hub .ins-num{font-size:12.5px;font-weight:700;letter-spacing:.06em;color:var(--at)}.hub .ins-card h3{font-size:24px;font-weight:750;letter-spacing:-.03em;margin:0}.hub .ins-card p,.hub .ins-topic p{margin:0;color:var(--ink-2);line-height:1.55}.hub .ins-k{margin:4px 0 -6px}.hub .ins-skills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:14px;font-weight:550}.hub .ins-skills li:not(:last-child):after{content:"·";margin:0 9px;color:var(--at);font-weight:800}.hub .ins-meta{margin-top:auto;padding-top:6px;font-size:13px}.hub .ins-topics{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hub .ins-topics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.hub .ins-topic{gap:10px}.hub .ins-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;gap:8px}.hub .ins-steps li{counter-increment:s;display:grid;grid-template-columns:26px 1fr;gap:8px;align-items:baseline;line-height:1.5;color:var(--ink)}.hub .ins-steps li:before{content:counter(s);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:700;color:var(--at);background:color-mix(in srgb,var(--a) 14%,transparent)}.hub .ins-uses{margin-top:auto;padding-top:6px;font-size:13px;color:var(--ink-2)}.hub .ins-topic h2,.hub .ins-topic-t{font-size:21px;font-weight:750;letter-spacing:-.025em;line-height:1.2;margin:0;color:var(--ink);text-decoration:none}.hub .ins-topic h2{font-size:clamp(24px,2.4vw,30px);scroll-margin-top:90px}.hub .ins-topic-t:hover{color:var(--at)}.hub .ins-built{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:auto;padding-top:6px}.hub .ins-built a{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--ink);text-decoration:none}.hub .ins-built a:hover{color:var(--at)}.hub .ins-topic.full{gap:14px;padding:32px;scroll-margin-top:90px}.hub .ins-topic:target{border-color:var(--a);box-shadow:0 0 0 3px color-mix(in srgb,var(--a) 30%,transparent),var(--sh-box);animation:ins-found 1.4s var(--ease)}.hub .ins-cl:target{border-radius:var(--r-mid);outline:2px solid color-mix(in srgb,var(--a) 60%,transparent);outline-offset:10px}@keyframes ins-found{0%{box-shadow:0 0 0 16px color-mix(in srgb,var(--a) 0%,transparent)}30%{box-shadow:0 0 0 6px color-mix(in srgb,var(--a) 45%,transparent)}}.hub .ins-take{list-style:none;margin:0;padding:0;display:grid;gap:10px}.hub .ins-take li{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;line-height:1.5;color:var(--ink)}.hub .ins-take svg{color:var(--at);margin-top:3px}.hub .ins-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:4px 0 0;padding:14px 0;border-block:1px solid var(--rule)}.hub .ins-facts dt{font-size:12px}.hub .ins-facts dd{margin:2px 0 0;font-size:14px;font-weight:600}.hub .ins-list{list-style:none;margin:36px 0 16px;padding:0;display:grid;gap:8px}.hub .ins-list a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 18px;border-radius:var(--r-card);background:var(--card);border:1px solid var(--rule);color:var(--ink);text-decoration:none}.hub .ins-list a:hover{border-color:var(--a)}.hub .ins-list small{color:var(--ink-3);font-size:13px}.hub .ins-ways{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.hub .ins-ways.three{grid-template-columns:repeat(3,minmax(0,1fr))}.hub .ins-ways li{display:grid;gap:8px;align-content:start;padding-top:16px;border-top:1px solid var(--rule)}.hub .ins-ways b{font-size:17px;font-weight:700;letter-spacing:-.015em}.hub .ins-ways p{margin:0;color:var(--ink-2);line-height:1.55;font-size:15px}.hub .ins-prose{max-width:46em;display:grid;gap:16px;margin-top:24px}.hub .ins-prose p{margin:0;font-size:17px;line-height:1.65;color:var(--ink-2)}.hub .ins-bios{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.3fr);gap:16px;margin-top:36px;align-items:start}.hub .ins-bio{display:grid;gap:14px;padding:22px 24px;border-radius:var(--r-big);background:var(--card);border:1px solid var(--rule)}.hub .ins-bio header{display:flex;align-items:center;gap:10px}.hub .ins-bio header b{font-size:16px;font-weight:700}.hub .ins-bio header small{font-size:12.5px;color:var(--ink-3);margin-right:auto}.hub .ins-bio p{margin:0;line-height:1.6;color:var(--ink-2);font-size:15px}.hub .ins-badge{--clip:polygon(50% 4%,89.8% 27%,89.8% 73%,50% 96%,10.2% 73%,10.2% 27%);position:relative;display:grid;place-items:center;flex:none;width:var(--s);aspect-ratio:1;isolation:isolate}.hub .ins-badge.round{--clip:circle(46%)}.hub .ins-badge svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.hub .ins-badge .o{fill:color-mix(in srgb,var(--a) 13%,var(--card));stroke:var(--a);stroke-width:2.4}.hub .ins-badge .i{fill:none;stroke:color-mix(in srgb,var(--a) 45%,transparent);stroke-width:1.1}.hub .ins-badge .d{fill:var(--a)}.hub .ins-badge b{position:relative;margin-top:8%;font:800 calc(var(--s) * .19)/1 var(--font-mono);letter-spacing:-.03em;color:var(--at)}.hub .ins-badge:after{content:"";position:absolute;inset:0;clip-path:var(--clip);pointer-events:none;background:linear-gradient(115deg,transparent 38%,rgb(255 255 255/.38) 50%,transparent 62%) no-repeat;background-size:260% 100%;background-position:160% 0;animation:ins-foil 7s var(--d,0s) ease-in-out infinite}@keyframes ins-foil{0%{background-position:160% 0}28%,to{background-position:-60% 0}}.hub .ins-certs{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.hub .ins-cert>:is(a,div){position:relative;display:flex;align-items:center;gap:20px;height:100%;padding:22px 24px;border-radius:var(--r-big);overflow:hidden;isolation:isolate;background:var(--card);border:1px solid color-mix(in srgb,var(--a) 18%,var(--rule));box-shadow:var(--sh-box);color:var(--ink);text-decoration:none;transition:border-color .25s,transform .3s var(--ease)}.hub .ins-cert>:is(a,div):before{content:"";position:absolute;inset:-60% auto auto -30%;width:70%;aspect-ratio:1;border-radius:50%;z-index:-1;background:radial-gradient(closest-side,color-mix(in srgb,var(--a) 18%,transparent),transparent)}.hub .ins-cert a:hover{border-color:var(--a);transform:translateY(-2px)}.hub .ins-cert a:hover .ins-badge:after{animation-duration:1.4s;animation-delay:0s}.hub .ins-cert-t{display:grid;gap:4px;min-width:0}.hub .ins-cert-t b{font-size:17px;font-weight:750;letter-spacing:-.02em;line-height:1.25}.hub .ins-cert-t small{font-size:13px;color:var(--ink-3)}.hub .ins-cert-go{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:13px;font-weight:600;color:var(--at)}.hub .ins-cert-strip{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px}.hub .ins-cert-strip a{display:grid;justify-items:center;gap:10px;padding:16px 8px 14px;border-radius:var(--r-mid);color:var(--ink-2);text-decoration:none;text-align:center;border:1px solid transparent;transition:border-color .25s,background-color .25s}.hub .ins-cert-strip a:hover{border-color:color-mix(in srgb,var(--a) 40%,var(--rule));background:var(--card)}.hub .ins-cert-strip a:hover .ins-badge:after{animation-duration:1.4s;animation-delay:0s}.hub .ins-cert-strip small{font-size:12.5px;line-height:1.35}.hub .ins-pattern{--grid:color-mix(in srgb,var(--a) 8%,transparent);border-style:dashed;border-color:color-mix(in srgb,var(--a) 42%,var(--rule));background:linear-gradient(var(--grid) 1px,transparent 1px) 0 0 /24px 24px,linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0 /24px 24px,var(--card)}.hub .ins-pattern:before{display:none}.hub .ins-pattern>.ins-num{position:absolute;top:16px;right:20px;font-size:46px;font-weight:800;letter-spacing:-.05em;line-height:1;color:transparent;-webkit-text-stroke:1.2px color-mix(in srgb,var(--a) 60%,transparent)}.hub .ins-pattern>:is(.ins-k,.ins-topic-t){padding-right:56px}.hub .ins-ocs>[hidden]{display:none}.hub .ins-ocs{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.hub .ins-oc{display:flex;flex-direction:column;border-radius:var(--r-big);background:var(--card);border:1px solid color-mix(in srgb,var(--a) 22%,var(--rule));box-shadow:var(--sh-box);overflow:hidden;transition:transform .35s var(--ease),border-color .25s,box-shadow .35s}.hub .ins-oc:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--a) 60%,var(--rule));box-shadow:var(--sh-box),0 30px 70px -34px color-mix(in srgb,var(--a) 60%,transparent)}.hub .ins-oc-win{position:relative;margin:10px 10px 0;border-radius:calc(var(--r-big) - 8px);overflow:hidden;isolation:isolate;background:color-mix(in srgb,var(--a) 6%,var(--bg));border:1px solid color-mix(in srgb,var(--a) 16%,var(--rule))}.hub .ins-oc-win:after{content:"";position:absolute;inset:-50% -30% auto auto;width:70%;aspect-ratio:1;border-radius:50%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,color-mix(in srgb,var(--a) 22%,transparent),transparent)}.hub .ins-oc-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid color-mix(in srgb,var(--a) 14%,var(--rule));font:500 12px var(--font-mono);color:var(--ink-2)}.hub .ins-oc-bar i{width:9px;height:9px;border-radius:50%;background:color-mix(in srgb,var(--ink) 16%,transparent)}.hub .ins-oc-bar b{margin-left:8px;padding:3px 9px;border-radius:6px;font-weight:600;color:var(--ink);background:color-mix(in srgb,var(--a) 12%,transparent)}.hub .ins-oc-bar em{margin-left:auto;font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--at)}.hub .ins-code{margin:0;padding:14px 16px 16px 0;min-height:calc(7 * 1.75em + 30px);font:500 12.5px/1.75 var(--font-mono);color:var(--ink-2);counter-reset:ln;overflow-x:auto;scrollbar-width:none}.hub .ins-code code{display:block;font:inherit;white-space:pre}.hub .ins-code span:before{counter-increment:ln;content:counter(ln);display:inline-block;width:2.6em;padding-right:.9em;text-align:right;color:var(--ink-3);opacity:.6}.hub :is(.ins-code,.ins-lesson .md-code){--s:#f0a37a}:root[data-theme=light] .hub :is(.ins-code,.ins-lesson .md-code){--s:#b4532a}.hub :is(.ins-code,.ins-lesson .md-code) i{font-style:normal}.hub :is(.ins-code,.ins-lesson .md-code) .k{color:var(--at);font-weight:650}.hub :is(.ins-code,.ins-lesson .md-code) .f{color:var(--ink);font-weight:600}.hub :is(.ins-code,.ins-lesson .md-code) :is(.s,.n){color:var(--s)}.hub :is(.ins-code,.ins-lesson .md-code) .m{color:color-mix(in srgb,var(--at) 65%,var(--ink))}.hub :is(.ins-code,.ins-lesson .md-code) .c{color:var(--ink-3);font-style:italic}.hub .ins-caret{display:inline-block;width:7px;height:1.2em;margin-left:3px;vertical-align:-.25em;background:var(--a);animation:ins-blink 1.1s steps(1) infinite}@keyframes ins-blink{50%{opacity:0}}.hub .ins-oc-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:22px 24px 24px}.hub .ins-oc-body>p{margin:0;color:var(--ink-2);line-height:1.55}.hub .ins-track{position:relative;list-style:none;margin:6px 0 10px;padding:0}.hub .ins-track:before{content:"";position:absolute;left:6px;top:18px;bottom:18px;width:2px;border-radius:2px;background:linear-gradient(var(--a),color-mix(in srgb,var(--a) 25%,transparent))}.hub .ins-track a{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:14px;align-items:center;padding:8px 0;font-size:14.5px;font-weight:550;color:var(--ink);text-decoration:none}.hub .ins-track a:before{content:"";position:relative;width:14px;height:14px;box-sizing:border-box;border-radius:50%;border:2px solid var(--a);background:var(--card);transition:background-color .2s}.hub .ins-track a:hover:before{background:var(--a)}.hub .ins-track a:hover span{color:var(--at)}.hub .ins-track small{font:500 12px var(--font-mono);color:var(--ink-3)}.hub .ins-oc-go{margin-top:auto;display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:14px;font-size:14.5px;font-weight:650;color:var(--ink);text-decoration:none;background:color-mix(in srgb,var(--a) 12%,transparent);border:1px solid color-mix(in srgb,var(--a) 30%,transparent);transition:background-color .25s}.hub .ins-oc-go small{margin-left:auto;font-size:12.5px;font-weight:500;color:var(--ink-2)}.hub .ins-oc-go:hover{background:color-mix(in srgb,var(--a) 22%,transparent)}.hub .ins-cls{list-style:none;margin:36px 0 0;padding:0;border-bottom:1px solid var(--rule)}.hub .ins-cl{position:relative;display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr) 220px;gap:44px;align-items:center;padding:32px 0;border-top:1px solid var(--rule);scroll-margin-top:90px}.hub .ins-cl:before{content:"";position:absolute;left:0;top:-1px;width:64px;height:2px;background:var(--a)}.hub .ins-cl-head{display:grid;gap:10px}.hub .ins-cl-head h3{margin:0;font-size:24px;font-weight:750;letter-spacing:-.03em;line-height:1.15}.hub .ins-cl-head p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-2)}.hub .ins-route{--n:5;position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));min-height:196px}.hub .ins-route:after,.hub .ins-route:before{content:"";position:absolute;top:50%;height:4px;margin-top:-2px;border-radius:4px}.hub .ins-route:before{left:calc(50% / var(--n));right:calc(50% / var(--n));background:linear-gradient(90deg,var(--a),color-mix(in srgb,var(--a) 30%,var(--rule)))}.hub .ins-route:after{width:60px;left:calc(50% / var(--n));background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--a) 35%,#fff),transparent);animation:ins-train 5.5s var(--ease) infinite}@keyframes ins-train{0%{left:calc(50% / var(--n));opacity:0}12%,85%{opacity:1}to{left:calc(100% - 50% / var(--n) - 60px);opacity:0}}.hub .ins-route li{display:grid;grid-template-rows:minmax(0,1fr) 30px minmax(0,1fr)}.hub .ins-route b{grid-row:2;justify-self:center;position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;box-sizing:border-box;border-radius:50%;background:var(--card);border:2px solid var(--a);font:700 12px var(--font-mono);color:var(--at);transition:background-color .2s,color .2s,transform .25s var(--ease)}.hub .ins-route li:hover b{background:var(--a);color:var(--bg);transform:scale(1.15)}.hub .ins-route span{grid-row:3;align-self:start;margin:0 -42%;padding-top:14px;text-align:center;font-size:13.5px;line-height:1.4;color:var(--ink-2);transition:color .2s}.hub .ins-route li:nth-child(2n) span{grid-row:1;align-self:end;padding:0 0 14px}.hub .ins-route li:first-child span{margin:0 -50% 0 calc(50% - 15px);text-align:left}.hub .ins-route li:last-child span{margin:0 calc(50% - 15px) 0 -50%;text-align:right}.hub .ins-route li:hover span{color:var(--ink)}.hub .ins-cl-side{display:grid;gap:6px;justify-items:start;padding-left:28px;border-left:1px solid var(--rule)}.hub .ins-cl-side strong{font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.05;color:var(--at)}.hub .ins-cl-side small{font-size:13px;line-height:1.45;color:var(--ink-3)}.hub .ins-cl-side a{margin-top:10px;display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--ink);text-decoration:none}.hub .ins-cl-side a:hover{color:var(--at)}.hub .ins-talks{list-style:none;margin:36px 0 0;padding:0;border-bottom:1px solid var(--rule)}.hub .ins-talk{position:relative;display:grid;grid-template-columns:104px minmax(0,1fr) 48px;gap:28px;align-items:center;padding:30px 24px;border-top:1px solid var(--rule);isolation:isolate;scroll-margin-top:90px}.hub .ins-talk:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--r-big);opacity:0;transition:opacity .3s;background:linear-gradient(90deg,color-mix(in srgb,var(--a) 11%,transparent),transparent 75%)}.hub .ins-talk:not(.full):hover:before{opacity:1}.hub .ins-talk-n{font-size:64px;font-weight:800;letter-spacing:-.05em;line-height:.9;color:transparent;-webkit-text-stroke:1.4px var(--a);transition:color .3s}.hub .ins-talk:hover .ins-talk-n{color:var(--a)}.hub .ins-talk-main{display:grid;gap:8px;justify-items:start}.hub .ins-talk-main p{margin:0;max-width:52em;line-height:1.55;color:var(--ink-2)}.hub .ins-talk-go{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--edge);color:var(--ink-2);transition:background-color .25s,border-color .25s,color .25s,transform .3s var(--ease)}.hub .ins-talk:hover .ins-talk-go{background:var(--a);border-color:var(--a);color:var(--bg);transform:translateX(4px)}.hub .ins-talk.full{grid-template-columns:104px minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:36px;padding:44px 0}.hub :is(.ins-pattern,.ins-talk,.ins-oc) a.ins-topic-t:after{content:"";position:absolute;inset:0;border-radius:inherit}.hub .ins-oc{position:relative}.hub :is(.ins-track a,.ins-oc-go,.ins-talk-go){position:relative;z-index:1}.hub .ins-pattern:has(>a.ins-topic-t){transition:transform .35s var(--ease),border-color .25s}.hub .ins-pattern:has(>a.ins-topic-t):hover{transform:translateY(-4px);border-color:var(--a)}.hub .ins-talk.full h2{margin:0;font-size:clamp(24px,2.4vw,32px);font-weight:750;letter-spacing:-.03em;line-height:1.15}.hub .ins-talk.full .ins-built{margin-top:6px}.hub .ins-talk-take{display:grid;gap:14px;padding:22px 24px;border-radius:var(--r-big);background:color-mix(in srgb,var(--a) 6%,var(--card));border:1px solid color-mix(in srgb,var(--a) 18%,var(--rule))}.hub .ins-talk-take small{font-size:13px;color:var(--ink-3)}.hub .ins-map{--pct:0;display:grid;gap:24px;align-self:center;padding:24px;border-radius:var(--r-big);background:var(--card);border:1px solid color-mix(in srgb,var(--a) 24%,var(--rule));box-shadow:var(--sh-box),0 30px 80px -40px color-mix(in srgb,var(--a) 60%,transparent);animation:hub-fade 1.1s .25s backwards}.hub .ins-map>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.hub .ins-map>header>div{display:grid;gap:6px}.hub .ins-map>header>div>span{font-size:13.5px;color:var(--ink-2)}.hub .ins-map .ins-oc-win{margin:0}.hub .ins-ring{position:relative;flex:none;display:grid;place-items:center;align-content:center;width:68px;height:68px}.hub .ins-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.hub .ins-ring circle{fill:none;stroke:var(--rule);stroke-width:4}.hub .ins-ring circle.on{stroke:var(--a);stroke-dasharray:var(--pct) 100;transition:stroke-dasharray .7s var(--ease)}.hub .ins-ring b{position:relative;font:700 16px/1 var(--font-mono)}.hub .ins-ring small{position:relative;margin-top:2px;font-size:11px;color:var(--ink-3)}.hub .ins-stops{--n:3;position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr))}.hub .ins-stops:after,.hub .ins-stops:before{content:"";position:absolute;top:17px;left:calc(50% / var(--n));height:3px;border-radius:3px}.hub .ins-stops:before{right:calc(50% / var(--n));background:var(--rule)}.hub .ins-stops:after{width:calc((100% - 100% / var(--n)) * var(--pct) / 100);background:var(--a);transition:width .7s var(--ease)}.hub .ins-stops a{display:grid;justify-items:center;gap:6px;padding:0 6px;text-align:center;color:var(--ink);text-decoration:none}.hub .ins-stops span{margin-top:4px;font-size:14px;font-weight:650;line-height:1.3}.hub .ins-stops small{font:500 11.5px var(--font-mono);color:var(--ink-3)}.hub .ins-stops a:hover span{color:var(--at)}.hub :is(.ins-stops,.ins-lnav) b{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;box-sizing:border-box;border-radius:50%;border:2px solid var(--a);background:var(--card);font:700 13px var(--font-mono);color:var(--at);transition:background-color .25s,color .25s,transform .25s var(--ease)}.hub :is(.ins-stops,.ins-lnav) b i{font-style:normal}.hub :is(.ins-stops,.ins-lnav) .done b i,.hub :is(.ins-stops,.ins-lnav) b svg{display:none}.hub :is(.ins-stops,.ins-lnav) .done b svg{display:block}.hub :is(.ins-stops,.ins-lnav) .done b{background:var(--a);color:var(--bg)}.hub .ins-stops a:hover b{transform:scale(1.1)}.hub .ins-before{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;margin-top:36px}.hub .ins-before>div{display:grid;gap:14px;align-content:start;padding:26px 28px;border-radius:var(--r-big);background:var(--card);border:1px solid var(--rule)}.hub .ins-needs header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.hub .ins-needs header small{font:600 12.5px var(--font-mono);color:var(--at)}.hub .ins-needs ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}.hub .ins-needs label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;margin:0 -12px;padding:10px 12px;border-radius:12px;line-height:1.5;cursor:pointer;transition:background-color .2s,color .2s}.hub .ins-needs label:hover{background:color-mix(in srgb,var(--a) 7%,transparent)}.hub .ins-needs input{margin-top:2px}.hub .ins-needs label:has(input:checked){color:var(--ink-3);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--a) 70%,transparent)}.hub .ins-before>.ins-build{position:relative;overflow:hidden;isolation:isolate;border-color:color-mix(in srgb,var(--a) 32%,var(--rule));background:radial-gradient(120% 120% at 100% 0,color-mix(in srgb,var(--a) 18%,transparent),transparent 60%),var(--card)}.hub .ins-build p{margin:0;font-size:19px;line-height:1.5;letter-spacing:-.01em;color:var(--ink)}.hub .ins-build small{font-size:13px;color:var(--ink-3)}.hub .ins-learn{display:grid;grid-template-columns:250px minmax(0,1fr);gap:64px;margin-top:96px;align-items:start}.hub .ins-lnav{--read:0;position:sticky;top:96px;display:grid;gap:14px}.hub .ins-lnav ol{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:10px}.hub .ins-lnav ol:after,.hub .ins-lnav ol:before{content:"";position:absolute;left:15px;top:16px;bottom:16px;width:2px;border-radius:2px;background:var(--rule)}.hub .ins-lnav ol:after{background:var(--a);transform-origin:top;transform:scaleY(var(--read))}.hub .ins-lnav a{display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;align-items:center;font-size:14.5px;font-weight:550;line-height:1.35;color:var(--ink-2);text-decoration:none}.hub .ins-lnav b{width:32px;height:32px;font-size:12px;border-color:var(--rule);color:var(--ink-3);background:var(--bg)}.hub .ins-lnav a:hover,.hub .ins-lnav a[aria-current]{color:var(--ink)}.hub .ins-lnav a[aria-current] b{border-color:var(--a);color:var(--at);box-shadow:0 0 0 5px color-mix(in srgb,var(--a) 16%,transparent)}.hub .ins-lnav>small{font:600 12.5px var(--font-mono);color:var(--ink-3)}.hub .ins-lessons{display:grid;gap:110px}.hub .ins-lessons[data-on]>.ins-lesson:not(.on){display:none}.hub .ins-lesson{display:grid;grid-template-columns:minmax(0,760px) 220px;column-gap:56px;align-items:start;scroll-margin-top:90px}.hub .ins-lesson>:not(.ins-subjects){grid-column:1}.hub .ins-lesson :is(h2,h3)[id]{scroll-margin-top:96px}.hub .ins-subjects{grid-column:2;grid-row:1/span 3;position:sticky;top:96px;display:grid;gap:12px;padding-top:34px}.hub .ins-subjects ol{list-style:none;margin:0;padding:0;display:grid;border-left:2px solid var(--rule)}.hub .ins-subjects a{display:block;margin-left:-2px;padding:7px 0 7px 16px;border-left:2px solid transparent;font-size:14px;line-height:1.4;color:var(--ink-3);text-decoration:none;transition:color .2s,border-color .2s}.hub .ins-subjects a:hover{color:var(--ink)}.hub .ins-subjects a[aria-current]{color:var(--ink);font-weight:600;border-left-color:var(--a)}.hub .ins-lesson>header{position:relative;isolation:isolate;display:grid;gap:10px;margin-bottom:8px;padding-top:30px}.hub .ins-lesson-n{position:absolute;z-index:-1;top:-18px;right:0;font-size:clamp(96px,11vw,150px);font-weight:800;letter-spacing:-.06em;line-height:1;color:transparent;-webkit-text-stroke:1.5px color-mix(in srgb,var(--a) 50%,transparent);pointer-events:none}.hub .ins-lesson h2{margin:0;font-size:clamp(30px,3.4vw,44px);font-weight:800;letter-spacing:-.04em;line-height:1.05}.hub .ins-lesson-lede{margin:0;font-size:18px;line-height:1.55;color:var(--ink-2)}.hub .ins-lesson-end{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin-top:40px}.hub .ins-done{display:flex;align-items:center;gap:12px;padding:16px 22px;border-radius:var(--r-mid);border:1px solid var(--rule);background:var(--card);font-size:15px;font-weight:600;cursor:pointer;transition:border-color .25s,background-color .25s}.hub .ins-done:hover{border-color:color-mix(in srgb,var(--a) 50%,var(--rule))}.hub .ins-done:has(input:checked){border-color:var(--a);background:color-mix(in srgb,var(--a) 12%,var(--card))}.hub .ins-lesson-next{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:14px 22px;border-radius:var(--r-mid);background:var(--card);border:1px solid var(--rule);color:var(--ink);text-decoration:none;transition:border-color .25s}.hub .ins-lesson-next small{font-size:12.5px;color:var(--ink-3)}.hub .ins-lesson-next b{grid-row:2;font-size:17px;font-weight:700}.hub .ins-lesson-next svg{grid-row:1/3;grid-column:2;color:var(--at);transition:transform .25s var(--ease)}.hub .ins-lesson-next:hover{border-color:var(--a)}.hub .ins-lesson-next:hover svg{transform:translateX(4px)}.hub .ins-post{align-self:center;padding:18px 8px;animation:hub-fade 1.1s .25s backwards}.hub .ins-post-in{padding:10px;border-radius:22px;transform:rotate(-1.2deg);background:repeating-linear-gradient(135deg,#2f7cf6 0 16px,var(--card) 16px 26px,#ffc72c 26px 42px,var(--card) 42px 52px,#20c997 52px 68px,var(--card) 68px 78px);box-shadow:0 40px 90px -40px rgb(0 0 0/.65)}:root[data-theme=light] .hub .ins-post-in{box-shadow:0 40px 80px -40px rgb(16 18 27/.35)}.hub .ins-post-paper{--btn:var(--ink);--bink:var(--bg);position:relative;padding:24px 26px 20px;border-radius:14px;background:var(--card)}.hub .ins-post-head{position:absolute;top:20px;right:22px;width:calc((100% - 52px) / 2 - 24px);height:104px;pointer-events:none}.hub .ins-post-to{display:grid;gap:1px;font-size:13px;line-height:1.4;color:var(--ink-2)}.hub .ins-post-to small{font:600 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.hub .ins-post-to b{font-size:15px;color:var(--ink)}.hub .ins-postmark{position:absolute;right:54px;top:34px;width:120px;transform:rotate(-12deg);fill:none;stroke:color-mix(in srgb,var(--ink) 34%,transparent);stroke-width:1.4}.hub .ins-postmark text{fill:color-mix(in srgb,var(--ink) 42%,transparent);stroke:none;font:700 8.5px var(--font-mono);letter-spacing:.12em;text-anchor:middle}.hub .ins-stamp{position:absolute;top:0;right:0;width:76px;height:92px;padding:5px;box-sizing:border-box;background:color-mix(in srgb,var(--a) 22%,var(--card));transform:rotate(3deg);-webkit-mask:linear-gradient(#000 0 0) content-box,radial-gradient(circle at 0 0,#0000 3px,#000 3.5px) 0 0 /9px 9px round;mask:linear-gradient(#000 0 0) content-box,radial-gradient(circle at 0 0,#0000 3px,#000 3.5px) 0 0 /9px 9px round}.hub .ins-stamp>span{display:grid;place-content:center;justify-items:center;gap:5px;height:100%;border:1px solid color-mix(in srgb,var(--a) 60%,transparent);background:radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--a) 28%,transparent),transparent 70%)}.hub .ins-stamp b{font-size:10.5px;font-weight:800;letter-spacing:.02em;color:var(--ink)}.hub .ins-stamp small{font:600 8px var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.hub .ins-post .cform:not(.cform-done){grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"msg topic" "msg row" "msg go" "note note";column-gap:0;row-gap:18px}.hub .ins-post .cform>label:not(.cform-hp){grid-area:msg;display:flex;flex-direction:column;padding-right:24px;border-right:1px solid var(--rule)}.hub .ins-post .cform>label:not(.cform-hp) .dt-label{margin-bottom:4px;font:italic 400 28px/1.15 var(--font-serif);letter-spacing:-.01em;color:var(--at)}.hub .ins-post textarea.dt-field{flex:1;min-height:260px;resize:none;padding:0 2px;border:0;border-radius:0;box-shadow:none;outline:0;font-size:16px;line-height:32px;background:repeating-linear-gradient(transparent 0 31px,var(--rule) 31px 32px) local}.hub .ins-post textarea.dt-field:focus{background:repeating-linear-gradient(transparent 0 31px,color-mix(in srgb,var(--a) 55%,var(--rule)) 31px 32px) local}.hub .ins-post :is(.cform-topic,.cform-row,.cform-go){padding-left:24px}.hub .ins-post .cform-topic{grid-area:topic;margin-top:118px}.hub .ins-post .cform-row{grid-area:row;grid-template-columns:minmax(0,1fr);gap:12px}.hub .ins-post .cform-row .dt-field{padding-inline:2px;border:0;border-bottom:1.5px solid var(--rule);border-radius:0;background:transparent;box-shadow:none;outline:0}.hub .ins-post .cform-row .dt-field:focus{border-bottom-color:var(--a)}.hub .ins-post .cform-go{grid-area:go;align-self:end}.hub .ins-post .cform-note{grid-area:note;padding-top:14px;border-top:1px dashed var(--rule)}.hub .ins-post .cform-err{grid-column:1/-1}.hub .ins-post .cform-done{min-height:320px;align-content:end;padding-right:calc((100% - 52px) / 2)}.hub .ins-mail{font-size:15px;font-weight:600;color:var(--ink);text-underline-offset:4px;margin-right:6px}.hub .ins-go{font-size:14px;font-weight:600;color:var(--at);text-decoration:none}.hub .ins-go:hover{text-decoration:underline;text-underline-offset:4px}.hub .ins-starters{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.hub .ins-starters>li{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:18px;background:var(--card);border:1px solid var(--rule);box-shadow:var(--sh-box);rotate:var(--tilt,-1deg);transition:rotate .45s var(--ease),translate .45s var(--ease),border-color .25s}.hub .ins-starters>li:nth-child(2){--tilt:.8deg}.hub .ins-starters>li:nth-child(3){--tilt:-.5deg}.hub .ins-starters>li:hover{rotate:0deg;translate:0 -4px;border-color:color-mix(in srgb,var(--a) 50%,var(--rule))}.hub .ins-starters b{font-size:21px;font-weight:750;letter-spacing:-.025em}.hub .ins-starters p{margin:0;line-height:1.55;color:var(--ink-2)}.hub .ins-starters pre{margin:6px 0 4px;padding:6px 14px 4px;border-left:2px solid var(--a);white-space:pre-wrap;font:italic 400 17px/28px var(--font-serif);color:var(--ink-2);background:repeating-linear-gradient(transparent 0 27px,var(--rule) 27px 28px) local}.hub .ins-starter-go{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:auto;padding-top:6px}.hub .ins-rb{--loop:12s;position:relative;width:100%;max-width:620px;justify-self:center;aspect-ratio:600/520;container-type:inline-size;animation:hub-fade 1.1s .25s backwards}.hub .ins-rb:is(:hover,:focus-within) *{animation-play-state:paused!important}.hub .ins-rb-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.hub .ins-rb-wires path{fill:none;stroke:color-mix(in srgb,var(--a) 35%,var(--rule));stroke-width:1.5;stroke-dasharray:.012 .012}.hub .ins-rb-wires path.on{stroke:var(--a);stroke-width:2.2;stroke-dasharray:.1 .9;opacity:0;animation:ins-rb-flow 1.1s linear infinite,ins-rb-wire var(--loop) calc(var(--i) * var(--loop) / 4 - var(--loop)) infinite}@keyframes ins-rb-flow{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes ins-rb-wire{0%,22%{opacity:1}25%,to{opacity:0}}.hub .ins-rb-tools{list-style:none;margin:0;padding:0}.hub .ins-rb-tools li{position:absolute;max-width:49%;animation:ins-rb-tool var(--loop) calc(var(--i) * var(--loop) / 4 - var(--loop)) infinite}.hub .ins-rb-tools li:first-child{left:0;top:0}.hub .ins-rb-tools li:nth-child(2){right:0;top:0}.hub .ins-rb-tools li:nth-child(3){right:0;bottom:0}.hub .ins-rb-tools li:nth-child(4){left:0;bottom:0}@keyframes ins-rb-tool{0%,22%{opacity:1;transform:translateY(-2px)}25%,to{opacity:.55;transform:none}}.hub .ins-rb-tools a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2.2cqw;padding:1.8cqw 2.4cqw 1.8cqw 1.8cqw;border-radius:2.6cqw;background:var(--card);border:1px solid color-mix(in srgb,var(--a) 30%,var(--rule));box-shadow:var(--sh-box);color:var(--ink);text-decoration:none;transition:border-color .25s}.hub .ins-rb-tools a:hover{border-color:var(--a)}.hub .ins-rb-tools a>svg{align-self:start;color:var(--ink-3)}.hub .ins-rb-tools a:hover>svg{color:var(--at)}.hub .ins-rb-tic{display:grid;place-items:center;width:8cqw;aspect-ratio:1;border-radius:2cqw;color:var(--at);background:color-mix(in srgb,var(--a) 16%,var(--bg))}.hub .ins-rb-tic svg{width:4.4cqw;height:4.4cqw}.hub .ins-rb-tt{display:grid;gap:.3cqw;min-width:0}.hub .ins-rb-tt b{font-size:clamp(10px,2.6cqw,16px);font-weight:750;letter-spacing:-.02em;line-height:1.15;white-space:nowrap}.hub .ins-rb-tt small{font-size:clamp(9px,2.1cqw,12.5px);color:var(--at);white-space:nowrap}.hub .ins-rb-page{position:absolute;left:13.33%;top:19.23%;width:73.33%;height:61.54%;border-radius:2.4cqw;overflow:hidden;container-type:inline-size;background:var(--card);border:1px solid var(--rule);box-shadow:var(--sh-box),0 30px 60px -30px rgb(0 0 0/.35);color:var(--ink);animation:ins-rb-paint var(--loop) infinite}@keyframes ins-rb-paint{0%,50%{filter:grayscale(1)}58%,95%{filter:none}to{filter:grayscale(1)}}.hub .ins-rb-page>*{position:absolute}.hub .ins-rb-rail{left:0;top:0;bottom:0;width:9.1%;display:grid;align-content:start;justify-items:center;gap:4.4cqw;padding-top:11cqw;background:color-mix(in srgb,var(--ink) 4%,transparent);border-right:1px solid var(--rule)}.hub .ins-rb-rail i{display:grid;place-items:center;color:var(--ink-3)}.hub .ins-rb-rail i:first-child{color:#2f7cf6}.hub .ins-rb-rail svg{width:3.6cqw;height:3.6cqw}.hub .ins-rb-bar{left:9.1%;right:0;top:0;height:10%;display:flex;align-items:center;gap:2cqw;padding:0 3cqw;border-bottom:1px solid var(--rule)}.hub .ins-rb-bar b{font-size:3cqw;font-weight:750;letter-spacing:-.02em}.hub .ins-rb-bar small{font-size:2.3cqw;color:var(--ink-3)}.hub .ins-rb-sw{display:flex;gap:1cqw;margin-left:auto}.hub .ins-rb-sw i{width:2.6cqw;aspect-ratio:1;border-radius:50%;animation:ins-rb-theme var(--loop) infinite}@keyframes ins-rb-theme{0%,50%{opacity:0;transform:scale(.3)}56%,95%{opacity:1;transform:none}to{opacity:0}}.hub .ins-rb-kpi{top:14.4%;width:26.7%;height:18.8%;left:calc(12.27% + var(--i) * 28.94%);display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;column-gap:1.6cqw;align-items:center;padding:1.8cqw 2.2cqw;border-radius:1.6cqw;border:1px solid var(--rule);background:color-mix(in srgb,var(--ink) 2.5%,transparent)}.hub .ins-rb-kpi:before{content:"";position:absolute;inset:0;opacity:0;animation:ins-rb-skel var(--loop) infinite;background:linear-gradient(color-mix(in srgb,var(--ink) 9%,transparent) 0 0) 2.2cqw 2.4cqw /50% 1.4cqw no-repeat,linear-gradient(color-mix(in srgb,var(--ink) 9%,transparent) 0 0) 2.2cqw 6.4cqw /34% 2.4cqw no-repeat}@keyframes ins-rb-skel{0%,3%{opacity:1}8%,95%{opacity:0}to{opacity:1}}.hub .ins-rb-kpi>*{animation:ins-rb-kpi var(--loop) infinite}.hub .ins-rb-kpi small{font-size:2.2cqw;color:var(--ink-3)}.hub .ins-rb-kpi b{grid-column:1/-1;font-size:4.6cqw;font-weight:800;letter-spacing:-.04em;line-height:1}.hub .ins-rb-kpi em{position:absolute;right:2.2cqw;bottom:2cqw;font-style:normal;font-size:2.1cqw;font-weight:700;color:#20c997}@keyframes ins-rb-kpi{0%,3%{opacity:0}8%,95%{opacity:1}to{opacity:0}}.hub .ins-rb-ic{display:grid;place-items:center;width:3.8cqw;aspect-ratio:1;border-radius:1cqw;color:#fff;background:#2f7cf6}.hub .ins-rb-kpi>.ins-rb-ic{animation-name:ins-rb-icon}.hub .ins-rb-kpi:nth-of-type(3) .ins-rb-ic{background:#20c997}.hub .ins-rb-kpi:nth-of-type(4) .ins-rb-ic{background:#ff6b3d}.hub .ins-rb-ic svg{width:2.6cqw;height:2.6cqw}.hub .ins-rb-rail i{animation:ins-rb-icon var(--loop) calc(var(--i) * .12s) infinite}@keyframes ins-rb-icon{0%,75%{opacity:0;transform:scale(.4)}80%,95%{opacity:1;transform:none}to{opacity:0}}.hub .ins-rb-chart{left:12.27%;top:36.9%;width:57.7%;height:57.5%}.hub .ins-rb-donut{left:72.27%;top:36.9%;width:24.6%;height:57.5%;display:grid;place-items:center;align-content:center;gap:2cqw}.hub :is(.ins-rb-chart,.ins-rb-donut) small{font-size:2.2cqw;color:var(--ink-3)}.hub .ins-rb-chart small{position:absolute;left:0;top:0}.hub .ins-rb-chart svg{position:absolute;left:0;right:0;bottom:0;width:100%;height:84%;overflow:visible}.hub .ins-rb-chart line{stroke:var(--rule);stroke-width:1;vector-effect:non-scaling-stroke}.hub .ins-rb-chart .line{fill:none;stroke:#2f7cf6;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;animation:ins-rb-draw var(--loop) infinite}.hub .ins-rb-chart .area{fill:color-mix(in srgb,#2f7cf6 16%,transparent);animation:ins-rb-chart var(--loop) infinite}.hub .ins-rb-donut svg{width:82%;transform:rotate(0);animation:ins-rb-chart var(--loop) infinite}.hub .ins-rb-donut circle{fill:none;stroke-width:6}@keyframes ins-rb-draw{0%,31%{stroke-dashoffset:1;opacity:1}44%,95%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes ins-rb-chart{0%,38%{opacity:0}46%,95%{opacity:1}to{opacity:0}}.hub .ins-rb-ask,.hub .ins-rb-dax{z-index:1;opacity:0;border-radius:1.6cqw;box-shadow:var(--sh-box)}.hub .ins-rb-dax{left:16%;top:42%;padding:1.4cqw 2.2cqw;font:600 2.4cqw/1.3 var(--font-mono);color:var(--ink);white-space:nowrap;animation:ins-rb-say1 var(--loop) infinite}.hub .ins-rb-ask,.hub .ins-rb-dax{background:color-mix(in srgb,#20c997 10%,var(--card));border:1px solid color-mix(in srgb,#20c997 45%,var(--rule))}.hub .ins-rb-ask{right:5%;top:40%;width:48%;display:grid;gap:.6cqw;padding:2cqw 2.6cqw;animation:ins-rb-say2 var(--loop) infinite}.hub .ins-rb-ask small{font-size:2cqw;color:var(--ink-3)}.hub .ins-rb-ask b{font-size:2.9cqw;font-weight:700;line-height:1.25}.hub .ins-rb-ask span{justify-self:start;margin-top:.8cqw;padding:.5cqw 1.8cqw;border-radius:99px;font-size:2.2cqw;font-weight:600;color:#fff;background:#2f7cf6}@keyframes ins-rb-say1{0%,3%{opacity:0;transform:translateY(6px)}20%,8%{opacity:1;transform:none}24%,to{opacity:0}}@keyframes ins-rb-say2{0%,26%{opacity:0;transform:translateY(6px)}30%,42%{opacity:1;transform:none}46%,to{opacity:0}}.hub .ins-tool-cards{margin-top:24px}@media (prefers-reduced-motion:reduce){.hub .ins-badge:after,.hub .ins-caret,.hub .ins-rb *,.hub .ins-route:after{animation:none!important}.hub .ins-rb :is(.ins-rb-dax,.ins-rb-ask){display:none}.hub .ins-route:after{display:none}.hub .ins-starters>li{transition:none}.hub .ins-topic:target{animation:none}}@media (max-width:1180px){.hub .ins-lesson{grid-template-columns:minmax(0,760px)}.hub .ins-subjects{position:static;grid-column:1;grid-row:2;margin:18px 0 6px;padding:16px 18px;border-radius:var(--r-mid);border:1px solid var(--rule);background:var(--card)}.hub .ins-subjects ol{border:0}.hub .ins-subjects a{margin:0;padding:5px 0;border:0}.hub .ins-ocs{grid-template-columns:minmax(0,1fr)}.hub .ins-oc{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.hub .ins-oc-win{margin:10px 0 10px 10px}.hub .ins-cl{grid-template-columns:minmax(0,1fr) 220px;row-gap:28px}.hub .ins-route{grid-column:1/-1;grid-row:2}}@media (max-width:980px){.hub .ins-starters{grid-template-columns:minmax(0,1fr);max-width:560px}.hub .ins-talk.full{grid-template-columns:80px minmax(0,1fr)}.hub .ins-talk-take{grid-column:2}.hub .ins-certs{grid-template-columns:repeat(2,minmax(0,1fr))}.hub .ins-learn{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:64px}.hub .ins-lnav{position:static}.hub .ins-ways,.hub .ins-ways.three{grid-template-columns:repeat(2,minmax(0,1fr))}.hub .ins-bios,.hub .ins-hero-in{grid-template-columns:minmax(0,1fr)}.hub .ins-hero-in{gap:32px}.hub .ins-flow{min-height:0;max-height:none;margin-left:calc(-1 * var(--gutter))}.hub .ins-focus,.hub .ins-topics.three{grid-template-columns:repeat(2,minmax(0,1fr))}.hub .ins-focus>:last-child:nth-child(odd){grid-column:1/-1}}@media (max-width:640px){.hub .ins-hero-in{padding-block:32px 24px}.hub .ins-before,.hub .ins-certs,.hub .ins-facts,.hub .ins-focus,.hub .ins-topics,.hub .ins-topics.three,.hub .ins-ways,.hub .ins-ways.three{grid-template-columns:minmax(0,1fr)}.hub .ins-cert>:is(a,div){padding:18px;gap:16px}.hub .ins-map{padding:18px}.hub .ins-lesson-end{grid-template-columns:minmax(0,1fr)}.hub .ins-lesson-n{top:-4px;font-size:80px}.hub .ins-post{padding:10px 0}.hub .ins-post-paper{padding:18px 16px 16px}.hub .ins-post-head{left:16px;right:16px;top:16px;width:auto}.hub .ins-post .cform:not(.cform-done){grid-template-columns:minmax(0,1fr);grid-template-areas:"topic" "msg" "row" "go" "note"}.hub .ins-post .cform>label:not(.cform-hp){padding-right:0;border-right:0}.hub .ins-post :is(.cform-topic,.cform-row,.cform-go){padding-left:0}.hub .ins-post textarea.dt-field{min-height:192px}.hub .ins-post .cform-done{padding:120px 0 0}.hub .ins-card,.hub .ins-topic{padding:22px}.hub .ins-oc{display:flex}.hub .ins-oc-win{margin:10px 10px 0}.hub .ins-code{font-size:11.5px}.hub .ins-oc-body{padding:18px 18px 20px}.hub .ins-cl{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 0}.hub .ins-cl-side{padding:16px 0 0;border:0;border-top:1px solid var(--rule);grid-row:3}.hub .ins-route{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-height:0}.hub .ins-route:before{left:13px;right:auto;top:15px;bottom:15px;width:4px;height:auto;margin:0}.hub .ins-route:after{display:none}.hub .ins-route li{grid-template-rows:none;grid-template-columns:30px minmax(0,1fr);gap:14px;align-items:center}.hub .ins-route b{grid-row:1}.hub .ins-route li span,.hub .ins-route li:first-child span,.hub .ins-route li:last-child span,.hub .ins-route li:nth-child(2n) span{grid-row:1;align-self:center;margin:0;padding:0;text-align:left;font-size:14.5px}.hub .ins-talk,.hub .ins-talk.full{grid-template-columns:minmax(0,1fr) 44px;gap:14px 16px;padding:26px 0}.hub .ins-talk:not(.full){padding-inline:14px}.hub .ins-talk-n{grid-column:1/-1;font-size:44px}.hub .ins-talk-take,.hub .ins-talk.full>*{grid-column:1/-1}.hub .ins-talk-go{width:44px;height:44px}}.hub .ins-tki{position:relative;width:100%;max-width:640px;justify-self:center;container-type:inline-size;animation:hub-fade 1.1s .25s backwards}.hub .ins-lanyard{aspect-ratio:600/560;max-width:560px}.hub .ins-lanyard .strap{position:absolute;left:25%;width:50%;top:-6%;height:22%;overflow:visible}.hub .ins-lanyard .strap path{fill:none;stroke:#ff6b3d;stroke-width:9;vector-effect:non-scaling-stroke}.hub .ins-lanyard .strap path+path{stroke:#a577ff}.hub .ins-lanyard .swing{position:absolute;left:50%;top:15%;width:50%;aspect-ratio:5/7;translate:-50% 0;transform-origin:50% -10%;transform-style:preserve-3d;container-type:inline-size;animation:ins-badge-sway 6s ease-in-out infinite}@keyframes ins-badge-sway{0%,to{rotate:-2.2deg}50%{rotate:2.2deg}}.hub .ins-lanyard .clip{position:absolute;left:50%;top:-9cqw;width:14cqw;height:12cqw;translate:-50% 0;border-radius:2.4cqw 2.4cqw 1.2cqw 1.2cqw;background:linear-gradient(#cfd3da,#8f96a2);box-shadow:inset 0 -2.4cqw 0 rgb(0 0 0/.18)}.hub .ins-lanyard .face{position:absolute;inset:0;display:grid;align-content:start;justify-items:start;gap:2.4cqw;padding:14cqw 8cqw 8cqw;border-radius:4.8cqw;overflow:hidden;background:var(--card);border:1px solid var(--edge);box-shadow:0 30px 60px -30px rgb(0 0 0/.55)}:root[data-theme=dark] @media(prefers-color-scheme: dark){:root:not([data-theme=light]) .hub .ins-lanyard .face:after{opacity:.4}}.hub .ins-lanyard .band{position:absolute;left:0;right:0;top:0;height:7.2cqw;background:var(--rainbow)}.hub .ins-lanyard .face:before{content:"";position:absolute;left:50%;top:9.6cqw;width:12cqw;height:2.2cqw;translate:-50% 0;border-radius:2cqw;background:var(--bg);box-shadow:inset 0 .4cqw .8cqw rgb(0 0 0/.25)}.hub .ins-lanyard .role{font-size:3.6cqw;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.hub .ins-lanyard .who{font-size:6.8cqw;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.hub .ins-lanyard .sep{width:100%;height:1px;margin:1.6cqw 0;background:var(--rule)}.hub .ins-lanyard .kick{font-size:3.8cqw;font-weight:600;color:var(--ink-2)}.hub .ins-lanyard .title{font-size:8.4cqw;font-weight:800;letter-spacing:-.035em;line-height:1.06;color:var(--ink)}.hub .ins-lanyard .foot,.hub .ins-lanyard .meta{font-size:3.8cqw;color:var(--ink-2)}.hub .ins-lanyard .foot{position:absolute;left:8cqw;right:8cqw;bottom:8cqw;display:grid;grid-template-columns:1fr auto;gap:.4cqw 4cqw;align-items:end}.hub .ins-lanyard .foot span:first-child{font-size:6cqw;font-weight:800;color:var(--a)}.hub .ins-lanyard .qr{grid-column:2;grid-row:1/3;display:block;width:19cqw;aspect-ratio:1;border-radius:1.6cqw;background:#fff;box-shadow:0 0 0 1px var(--rule)}.hub .ins-lanyard .qr svg{display:block;width:100%;height:100%}.hub .ins-lanyard .qr path{fill:#111;shape-rendering:crispEdges}.hub .ins-lanyard .subjects{display:flex;flex-wrap:wrap;gap:1.6cqw;margin-top:1.2cqw}.hub .ins-lanyard .subjects span{padding:1cqw 2.6cqw;border-radius:99px;font-size:3.6cqw;font-weight:600;color:var(--ink);background:color-mix(in srgb,var(--a) 16%,transparent);border:1px solid color-mix(in srgb,var(--a) 40%,var(--rule))}.hub .ins-lanyard{perspective:1400px}.hub .ins-lanyard .flip,.hub .ins-lanyard-hold{position:absolute;inset:0;transform-style:preserve-3d}.hub .ins-lanyard .flip{cursor:pointer;transition:transform 1s cubic-bezier(.5,0,.2,1)}.hub .ins-lanyard .flip.turned{transform:rotateY(180deg)}.hub .ins-lanyard .face{backface-visibility:hidden;-webkit-backface-visibility:hidden}.hub .ins-lanyard .face.back{transform:rotateY(180deg);gap:1.8cqw;padding-top:12.8cqw}.hub .ins-lanyard .links{list-style:none;margin:0;padding:0;display:grid;gap:1.4cqw;width:100%}.hub .ins-lanyard .links a{display:flex;align-items:center;gap:3.2cqw;padding:1.5cqw 2.4cqw;border-radius:2.8cqw;text-decoration:none;color:var(--ink);border:1px solid var(--rule);transition:background .2s,border-color .2s}.hub .ins-lanyard .links a:focus-visible,.hub .ins-lanyard .links a:hover{background:color-mix(in srgb,var(--ink) 5%,transparent);border-color:var(--edge)}.hub .ins-lanyard .links i{display:grid;place-items:center;flex:none;width:9.2cqw;aspect-ratio:1;border-radius:2.4cqw;color:var(--ink);background:color-mix(in srgb,var(--ink) 7%,transparent)}.hub .ins-lanyard .links span{display:grid;min-width:0}.hub .ins-lanyard .links b{font-size:4.6cqw;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub .ins-lanyard .links small{font-size:3.6cqw;color:var(--ink-3)}.hub .ins-lanyard-turn{position:absolute;left:50%;top:calc(100% + 5cqw);translate:-50% 0;padding:1.8cqw 4.8cqw;border-radius:99px;font:600 max(12px,4.4cqw) var(--font-sans);color:var(--ink-2);background:var(--card);border:1px solid var(--edge);cursor:pointer}.hub .ins-lanyard-turn:hover{color:var(--ink)}@media (max-width:640px){.hub .ins-lanyard{aspect-ratio:600/820}.hub .ins-lanyard .swing{width:70%;top:12%}.hub .ins-lanyard .strap{top:-3%;height:15%}}@media (prefers-reduced-motion:reduce){.hub .ins-lanyard .swing{animation:none}.hub .ins-lanyard .flip{transition:none}}.hub .ins-meta{margin:48px 0 0;text-align:center;font-size:13.5px;color:var(--ink-3)}.hub .ins-meta a{color:var(--ink-2);text-underline-offset:3px}.hub .ins-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:0 36px;margin:0;border-top:1px solid var(--rule)}.hub .ins-facts>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--rule)}.hub .ins-facts dt{font:600 12px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding-top:3px}.hub .ins-facts dd{margin:0;font-size:15.5px;line-height:1.5;color:var(--ink)}.hub .ins-built a,.hub .ins-cl-side a,.hub .ins-go,.hub .ins-mail{min-height:24px}.hub .ins-facts dd a,.hub .ins-go,.hub .ins-mail{display:inline-flex;align-items:center}.hub .ins-facts dd a{min-height:24px}.hub .ins-done input[type=checkbox],.hub .ins-needs input[type=checkbox]{width:24px;height:24px;border-radius:6px}.hub .ins-done input[type=checkbox]:before,.hub .ins-needs input[type=checkbox]:before{width:14px;height:14px}@media (max-width:640px){.hub .ins-oc-bar em,.hub .ins-rb-tt b,.hub .ins-rb-tt small,.hub .ins-sc-dim li,.hub .ins-sc-fact li span,.hub .ins-sc-h small,.hub .ins-sc-h span,.hub .ins-sc-more,.hub .ins-stamp b,.hub .ins-tool-cards .chrome span,.hub .kicker,.hub .lvb.sm,.hub .rn-subs button sup,.hub .stat-v.split b,.hub .tabs button sup,.hub .tag,.hub pre.ins-code,.hub pre.ins-code code{font-size:12px}}