:root{--paper:#fff;--paper-alt:#f7f8f7;--paper-deep:#edefee;--ink:#14171a;--ink-strong:#000;--ink-soft:#55595e;--ink-faint:#686d72;--mint:#6cc5a4;--mint-deep:#3e8e72;--mint-text:#2e6b56;--mint-wash:#eef8f4;--mint-light:#bfebdb;--norma:#f0c673;--norma-wash:#fdf6e7;--norma-deep:#8a5b08;--brand-forma:#2bba96;--brand-mark:#52cba3;--ink-2:#1c2024;--ink-3:#2b3236;--on-ink-2:#d8e0dc;--on-ink-3:#8e9a95;--on-ink:#fff;--on-ink-soft:#ffffffa8;--on-ink-rule:#ffffff47;--rule:#14171a17;--rule-strong:#14171a2e;--line:1px solid var(--rule);--line-strong:1px solid var(--rule-strong);--glass:#ffffffe6;--gt-1:158 43% 60%;--gt-2:159 39% 40%;--gt-3:180 42% 46%;--gt-4:150 52% 80%;--font-display:var(--font-sora,"Sora",system-ui,sans-serif);--font-body:var(--font-inter,"Inter",system-ui,sans-serif);--font-mono:var(--font-plex-mono,"IBM Plex Mono",ui-monospace,monospace);--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base-sm:.9375rem;--fs-base:1rem;--fs-lead:clamp(1.05rem,2vw,1.3rem);--fs-h4:1.15rem;--fs-h3:clamp(1.3rem,3vw,1.75rem);--fs-display-3:1.35rem;--fs-display-2:clamp(1.8rem,4.4vw,3rem);--fs-display-1:clamp(2.4rem,6.5vw,4.8rem);--fs-number:clamp(2rem,4.5vw,3rem);--lh-tight:1.05;--lh-heading:1.1;--lh-body:1.65;--track-display:-.03em;--track-caps:.14em;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-7:2rem;--s-8:2.5rem;--s-9:3rem;--s-10:4rem;--s-11:5rem;--s-12:6rem;--gutter:clamp(1rem,5vw,4rem);--section-y:clamp(3.5rem,8vw,6rem);--measure:62ch;--container:1180px;--r-s:4px;--r-m:8px;--r-l:16px;--r-pill:999px;--ease-out:cubic-bezier(.16,1,.3,1);--dur-fast:.2s;--dur-base:.3s;--dur-mark:.6s;--dur-slow:.9s;--mark-h:3px;--z-header:40;--z-studio:50;--header-h:68px;--avatar:30px;--logo-min:22px;--pb-logo-h:30px;--dur-draw:1.3s;--dur-orbit:120s;--pm-idx-h:42px;--pm-idx-w:188px;--pm-tx-w:440px;--pm-grid:34px;--dur-hd:.45s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:var(--lh-heading);letter-spacing:var(--track-display)}a{color:inherit}img,svg{max-width:100%}code,kbd{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:2px solid var(--mint-text);outline-offset:3px}button{font:inherit;color:inherit}.wrap{max-width:var(--container);padding-inline:var(--gutter);margin:0 auto}@media (width>=900px){.solo-mob{display:none!important}}@media (width<=899px){.solo-desk{display:none!important}}.d1{font-family:var(--font-display);font-size:var(--fs-display-1);letter-spacing:-.035em;font-weight:600;line-height:var(--lh-tight)}.d2{font-family:var(--font-display);font-size:var(--fs-display-2);letter-spacing:var(--track-display);font-weight:600;line-height:var(--lh-heading)}.d3{font-family:var(--font-display);font-size:var(--fs-display-3);font-weight:600}.lead{font-size:var(--fs-lead);color:var(--ink-soft);font-weight:300;line-height:1.55}.bd{font-size:var(--fs-base);color:var(--ink-soft)}.cap{font-size:var(--fs-xs);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-faint);font-weight:500}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cap--norma{color:var(--norma-deep)}.btns{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.btn{align-items:center;gap:var(--s-2);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--fs-base-sm);cursor:pointer;transition:background-color var(--dur-base),color var(--dur-base),border-color var(--dur-base);border:1px solid #0000;padding:.85rem 1.6rem;font-weight:500;text-decoration:none;display:inline-flex}.btn svg{width:15px;height:15px;transition:transform var(--dur-base) var(--ease-out)}.btn:hover svg{transform:translate(3px)}.btn-1{background:var(--ink);color:var(--on-ink)}.btn-1:hover{background:var(--ink-strong)}.btn-2{border-color:var(--rule-strong);color:var(--ink);background:0 0}.btn-2:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.btn-3{color:var(--mint-text);padding-inline:var(--s-1)}.btn-3:hover{color:var(--ink)}.on-ink .btn-1{background:var(--on-ink);color:var(--ink)}.on-ink .btn-1:hover{background:var(--mint-wash)}.on-ink .btn-2{border-color:var(--on-ink-rule);color:var(--on-ink)}.on-ink .btn-2:hover{background:var(--on-ink);color:var(--ink)}.btn-avatar{--av:var(--avatar);align-items:center;gap:var(--s-2);border-radius:var(--r-pill);background:var(--ink);color:var(--on-ink);font-size:var(--fs-md);white-space:nowrap;transition:background-color var(--dur-fast);padding:.3rem .95rem .3rem .3rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-avatar:hover{background:var(--ink-strong)}.btn-avatar img{width:var(--av);height:var(--av);object-fit:cover;outline:1.5px solid var(--mint);outline-offset:2px;border-radius:50%}.btn-avatar--lg{--av:36px;font-size:var(--fs-base-sm);padding:.4rem 1.2rem .4rem .4rem}.btn-avatar--block{width:100%;padding:.8rem var(--s-4);justify-content:center}.tag{white-space:nowrap;font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:var(--r-s);background:var(--paper-alt);color:var(--ink);padding:.22rem .4rem;line-height:1;display:inline-block}.tag--norma{background:var(--norma-wash);color:var(--norma-deep)}.idx{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--mint-text);line-height:1}.cmd{font-family:var(--font-mono);color:var(--ink);white-space:nowrap;font-weight:500}.cmd em,.cmd i{color:var(--mint-deep);font-style:normal}.btn .cmd{color:inherit;letter-spacing:-.02em;font-size:1.25em;font-weight:600;line-height:1}.btn-1 .cmd em{color:var(--mint)}.cmd--brush{padding-bottom:.72em;font-size:1.05rem;display:inline-block;position:relative}.cmd-brush{width:113%;height:.66em;fill:var(--mint-deep);position:absolute;bottom:-.06em;left:-5%;overflow:visible}.cmd-brush .cmd-brush-tail{fill:none;stroke:var(--mint-deep);stroke-linecap:round}.cmd-item:nth-child(2n) .cmd-brush{transform:scaleX(-1)}.cmds{gap:var(--s-5) var(--s-8);flex-wrap:wrap;align-items:flex-end;display:flex}.cmd-item{gap:var(--s-2);display:grid}.cmd-item small{font-size:var(--fs-sm);color:var(--ink-soft)}.file{align-items:center;gap:var(--s-2);border:var(--line);border-radius:var(--r-s);background:var(--paper-alt);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink);padding:.32rem .65rem;display:inline-flex}.file svg{width:12px;height:14px;color:var(--mint-deep)}.mark{position:relative}.mark:after{content:"";left:var(--mark-x,0);right:var(--mark-x,0);bottom:var(--mark-y,-3px);height:var(--mark-h);background:var(--mint);transform-origin:0;transition:transform var(--dur-mark) var(--ease-out);pointer-events:none;border-radius:2px;position:absolute;transform:scaleX(0)}.mark:hover:after,.has-mark:hover .mark:after,.has-mark:focus-visible .mark:after,.mark[aria-expanded=true]:after,.mark[aria-current=page]:after{transform:scaleX(1)}.highlight{isolation:isolate;display:inline-block;position:relative}.highlight:after{content:"";background:var(--mint);z-index:-1;border-radius:3px;height:.2em;position:absolute;bottom:.04em;left:-.04em;right:-.04em}.highlight--norma:after{background:var(--norma)}.gt{background:var(--paper);display:inline-flex;position:relative;overflow:hidden}.gt-ov{pointer-events:none;mix-blend-mode:lighten;position:absolute;inset:0}.gt-ov i{mix-blend-mode:overlay;filter:blur(1rem);width:30vw;height:30vw;position:absolute}.gt-ov i:first-child{background:hsl(var(--gt-1));animation:6s ease-in-out infinite gt-border,12s ease-in-out infinite alternate gt-1;top:-50%}.gt-ov i:nth-child(2){background:hsl(var(--gt-2));animation:6s ease-in-out infinite gt-border,12s ease-in-out infinite alternate gt-2;top:0;right:0}.gt-ov i:nth-child(3){background:hsl(var(--gt-3));animation:6s ease-in-out infinite gt-border,12s ease-in-out infinite alternate gt-3;bottom:0;left:0}.gt-ov i:nth-child(4){background:hsl(var(--gt-4));animation:6s ease-in-out infinite gt-border,12s ease-in-out infinite alternate gt-4;bottom:-50%;right:0}@keyframes gt-border{0%,to{border-radius:37% 29% 27% 27%/28% 25% 41% 37%}25%{border-radius:47% 29% 39% 49%/61% 19% 66% 26%}50%{border-radius:57% 23% 47% 72%/63% 17% 66% 33%}75%{border-radius:28% 49% 29% 100%/93% 20% 64% 25%}}@keyframes gt-1{0%,to{top:0;right:0}50%{top:50%;right:25%}75%{top:25%;right:50%}}@keyframes gt-2{0%,to{top:0;left:0}60%{top:75%;left:25%}85%{top:50%;left:50%}}@keyframes gt-3{0%,to{bottom:0;left:0}40%{bottom:50%;left:25%}65%{bottom:25%;left:50%}}@keyframes gt-4{0%,to{bottom:0;right:0}50%{bottom:25%;right:40%}90%{bottom:50%;right:25%}}@media (prefers-reduced-motion:reduce){.gt-ov i{animation:none!important}}.list-dot{gap:var(--s-2);list-style:none;display:grid}.list-dot li{padding-left:var(--s-5);font-size:var(--fs-md);color:var(--ink-soft);position:relative}.list-dot li:before{content:"";background:var(--dot,var(--mint));border-radius:50%;width:6px;height:6px;position:absolute;top:.6em;left:0}.list-dot--norma{--dot:var(--norma-deep)}.list-dot--muted{--dot:var(--ink-faint)}.cards{border:var(--line);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}.card{padding:var(--s-7);border-right:var(--line);background:var(--paper);transition:background-color var(--dur-base)}.card:last-child{border-right:0}.card:hover{background:var(--paper-alt)}.card h4{margin:var(--s-3) 0 var(--s-2);font-size:var(--fs-h4)}.card p{font-size:var(--fs-md);color:var(--ink-soft)}.field{gap:var(--s-2);max-width:380px;display:grid}.field label{font-size:var(--fs-sm);color:var(--ink-soft);font-weight:500}.field input,.field select{border:var(--line-strong);border-radius:var(--r-s);padding:.8rem var(--s-4);font-family:var(--font-body);font-size:var(--fs-base-sm);background:var(--paper);color:var(--ink)}.field input:focus{outline:2px solid var(--mint-text);outline-offset:1px;border-color:#0000}.callout{border-left:2px solid var(--mint);background:var(--mint-wash);padding:var(--s-5) var(--s-6);gap:var(--s-2);display:grid}.callout b{font-family:var(--font-display);font-size:var(--fs-base-sm)}.callout p{font-size:var(--fs-md);color:var(--ink-soft)}.table{border-collapse:collapse;width:100%;font-size:var(--fs-md)}.table th{text-align:left;font-weight:500;font-size:var(--fs-xs);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-faint);padding:var(--s-3) 0;border-bottom:var(--line-strong)}.table td{padding:var(--s-4) 0;border-bottom:var(--line);color:var(--ink-soft)}.table td:first-child{color:var(--ink);font-weight:500}.stats{gap:var(--s-7);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.stat b{font-family:var(--font-display);font-size:var(--fs-number);letter-spacing:var(--track-display);font-weight:600;line-height:var(--lh-heading);display:block}.stat span{font-size:var(--fs-md);color:var(--ink-faint)}.logo-img{width:auto;height:var(--logo-h,32px);min-height:var(--logo-min);max-width:100%;display:block}.pb{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-4);border:var(--line);border-radius:var(--r-pill);transition:border-color var(--dur-fast);text-decoration:none;display:inline-flex}a.pb:hover{border-color:var(--ink)}.pb em{font-style:normal;font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap}.pb img{height:var(--pb-logo-h);width:auto;display:block}.pb--plain{border:0;padding-inline:0}.pbrow{gap:var(--s-4);flex-wrap:wrap;align-items:center;display:flex}.copy{align-items:center;gap:var(--s-3);border:var(--line-strong);border-radius:var(--r-pill);font-size:var(--fs-base-sm);color:var(--ink);cursor:pointer;transition:border-color var(--dur-fast);background:0 0;padding:.75rem 1.1rem;display:inline-flex}.copy:hover{border-color:var(--ink)}.copy-status{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--mint-text);padding-left:var(--s-3);border-left:var(--line)}.skel{background:var(--rule);border-radius:2px;height:.62rem;display:block}.skel+.skel{margin-top:var(--s-2)}.skel.w45{width:45%}.skel.w70{width:70%}.skel.w85{width:85%}.skel-group{margin-top:var(--s-5)}.hd{top:var(--studio-h,0px);z-index:var(--z-header);transition:transform .45s var(--ease-out),background-color var(--dur-base),border-color var(--dur-base);background:0 0;border-bottom:1px solid #0000;position:sticky}.hd[data-state=solid],.hd[data-open]{background:var(--glass);border-bottom-color:var(--rule);backdrop-filter:saturate(1.4)blur(14px)}.hd[data-state=hidden]:not([data-open]){transform:translateY(-100%)}.hd-bar{height:var(--header-h);align-items:center;gap:var(--s-4);padding-inline:var(--gutter);display:flex}.hd-brand{align-items:center;margin-right:auto;text-decoration:none;display:inline-flex}.hd-brand .logo-img{--logo-h:30px}.hd-nav{display:none}.hd-nav ul{gap:var(--s-1);list-style:none;display:flex}.hd-link{--mark-x:.8rem;--mark-y:.3rem;align-items:center;gap:var(--s-2);font-size:var(--fs-base-sm);color:var(--ink-soft);cursor:pointer;transition:color var(--dur-fast);background:0 0;border:0;padding:.55rem .8rem;text-decoration:none;display:inline-flex}.hd-link:hover,.hd-link[aria-expanded=true],.hd-link[aria-current=page]{color:var(--ink)}.hd-link svg{width:12px;height:12px;transition:transform var(--dur-base) var(--ease-out)}.hd-link[aria-expanded=true] svg{transform:rotate(180deg)}.hd-burger{border:var(--line-strong);cursor:pointer;background:0 0;border-radius:50%;place-content:center;gap:5px;width:42px;height:42px;display:grid}.hd-burger i{background:var(--ink);width:16px;height:1.5px;transition:transform .35s var(--ease-out);display:block}.hd-burger[aria-expanded=true] i:first-child{transform:translateY(3.25px)rotate(45deg)}.hd-burger[aria-expanded=true] i:last-child{transform:translateY(-3.25px)rotate(-45deg)}.hd-progress{background:var(--mint);height:2px;transform:scaleX(var(--hd-p,0));transform-origin:0;pointer-events:none;position:absolute;bottom:-1px;left:0;right:0}.lbl-long{display:none}.hd-panel{border-top:var(--line);padding:var(--s-5) var(--gutter) var(--s-6)}.hd-courses{gap:var(--s-2);grid-template-columns:repeat(4,1fr);list-style:none;display:grid}.hd-course{gap:var(--s-2);height:100%;padding:var(--s-4) var(--s-4) var(--s-5);border-radius:var(--r-m);transition:background-color var(--dur-fast);flex-direction:column;text-decoration:none;display:flex}.hd-course:hover,.hd-course:focus-visible{background:var(--mint-wash)}.hd-course .cmd{font-size:var(--fs-sm);color:var(--mint-text)}.hd-course b{font-family:var(--font-display);font-weight:600;font-size:var(--fs-base);letter-spacing:-.02em;line-height:1.2}.hd-course small{font-size:var(--fs-sm);color:var(--ink-soft)}.hd-go{padding-top:var(--s-2);font-size:var(--fs-sm);color:var(--ink);opacity:0;transition:opacity var(--dur-base),transform var(--dur-base) var(--ease-out);margin-top:auto;font-weight:500;transform:translate(-4px)}.hd-course:hover .hd-go,.hd-course:focus-visible .hd-go{opacity:1;transform:none}.hd-panel:not([hidden]) .hd-courses li{animation:hd-in .5s var(--ease-out) both}.hd-panel:not([hidden]) .hd-courses li:nth-child(2){animation-delay:40ms}.hd-panel:not([hidden]) .hd-courses li:nth-child(3){animation-delay:80ms}.hd-panel:not([hidden]) .hd-courses li:nth-child(4){animation-delay:.12s}@keyframes hd-in{0%{opacity:0;transform:translateY(6px)}}.hd-sheet{border-top:var(--line);padding:var(--s-2) var(--gutter) var(--s-6);max-height:calc(100svh - var(--header-h) - var(--studio-h,0px));overscroll-behavior:contain;overflow-y:auto}.hd-sheet .hd-courses{grid-template-columns:1fr;gap:0}.hd-sheet .hd-course{padding:var(--s-4) 0;border-bottom:var(--line);border-radius:0}.hd-sheet .hd-course:hover{background:0 0}.hd-sheet .hd-go{display:none}.hd-sheet-links{margin:var(--s-3) 0 var(--s-6);list-style:none;display:grid}.hd-sheet-links a{align-items:center;gap:var(--s-2);padding:var(--s-3) 0;font-family:var(--font-display);font-size:var(--fs-h4);font-weight:500;text-decoration:none;display:flex}.hd-sheet .lbl-long{display:inline}.hd-sheet .lbl-short{display:none}@media (width<=420px){.hd-brand .logo-img{--logo-h:var(--logo-min)}}@media (width<=899px){.hd-panel{display:none!important}}@media (width>=900px){.hd-nav{display:block}.hd-burger,.hd-sheet{display:none!important}.hd .lbl-long{display:inline}.hd .lbl-short{display:none}.hd-brand{flex:1;margin-right:0}.hd-cta-wrap{flex:1;justify-content:flex-end;display:flex}}.hero{padding:clamp(4rem,11vw,8.5rem) var(--gutter) var(--section-y);max-width:var(--container);margin-inline:auto}.hero h1{font-size:var(--fs-display-1);letter-spacing:-.035em;line-height:var(--lh-tight);margin-bottom:var(--s-6)}.hero .lead{max-width:56ch;margin-bottom:var(--s-8)}.heroproof{gap:var(--s-2);margin-top:var(--s-8);max-width:var(--measure);list-style:none;display:grid}.heroproof li{padding-left:var(--s-6);font-size:var(--fs-base-sm);color:var(--ink-soft);position:relative}.heroproof li:before{content:"";background:var(--mint);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:.62em;left:0}.heroproof li i{font-style:normal;font-family:var(--font-mono);color:var(--mint-text)}@media (width>=900px){.heroproof{gap:var(--s-6);grid-template-columns:repeat(3,1fr);max-width:none}.heroproof li{padding-left:0;padding-top:var(--s-4)}.heroproof li:before{border-radius:0;width:1.7rem;height:2px;top:0}}.band{padding:clamp(3rem,7vw,5rem) var(--gutter);border-top:var(--line);background:var(--paper-alt)}.band--paper{background:var(--paper)}.band-head{max-width:640px;margin-bottom:var(--s-9)}.band-head h2{font-size:var(--fs-display-2);margin:var(--s-4) 0 var(--s-3)}.rows{border-top:var(--line)}.row{gap:var(--s-2);padding:var(--s-7) 0;border-bottom:var(--line);display:grid}.row-k{align-items:baseline;gap:var(--s-3);display:flex}.row-k h4{font-size:var(--fs-h4)}@media (width>=900px){.row{gap:var(--s-9);grid-template-columns:320px 1fr;align-items:start}}.cta{padding:var(--section-y) var(--gutter);background:var(--ink);color:var(--on-ink)}.cta h2{font-size:var(--fs-display-2);max-width:22ch;margin-bottom:var(--s-5)}.cta p{color:var(--on-ink-soft);max-width:48ch;margin-bottom:var(--s-7);font-weight:300}.ft{background:var(--paper);border-top:var(--line);position:relative;overflow:hidden}.ft-top{gap:var(--s-9);padding:var(--section-y) var(--gutter) clamp(2.5rem,5vw,3.5rem);display:grid}.ft-say{gap:var(--s-7);display:grid}.ft-say h2{font-size:var(--fs-display-1);letter-spacing:-.035em;line-height:1.02}.ft-actions{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.ft-mail{align-items:center;gap:var(--s-3);color:var(--ink-soft);flex-wrap:wrap;display:flex}.ft-cal{width:100%;max-width:62rem;margin-inline:auto}.ft-mob{gap:var(--s-3);justify-items:start;display:grid}.ft-mob p{font-size:var(--fs-sm);color:var(--ink-faint);max-width:36ch}.ft-cols{gap:var(--s-7) var(--s-6);padding-top:var(--s-8);border-top:var(--line);grid-template-columns:repeat(2,1fr);display:grid}.ft-cols .cap{margin-bottom:var(--s-4);display:block}.ft-cols>div:first-child{grid-column:1/-1}.ft-cols ul{gap:var(--s-2);list-style:none;display:grid}.ft-link{--mark-y:-2px;--mark-h:2px;align-items:center;gap:var(--s-2);font-size:var(--fs-base-sm);color:var(--ink-soft);transition:color var(--dur-fast);text-decoration:none;display:inline-flex}.ft-link:hover{color:var(--ink)}.ft-link .cmd{font-size:var(--fs-md);min-width:4.6em}.ft-ext{opacity:.6;width:10px;height:10px}.ft-legal{justify-content:space-between;align-items:center;gap:var(--s-3) var(--s-7);margin-inline:var(--gutter);padding:var(--s-6) 0;border-top:var(--line);font-size:var(--fs-sm);color:var(--ink-faint);flex-wrap:wrap;display:flex}.ft-legal-r{gap:var(--s-6);flex-wrap:wrap;display:flex}.ft-legal a{text-decoration:none}.ft-legal a:hover{color:var(--ink)}.ft-copyr{flex:1;min-width:16rem}.ft-top-btn{color:var(--ink);font-weight:500}@media (width>=900px){.ft-cols{gap:var(--s-7);grid-template-columns:1.4fr 1fr 1fr 1fr}.ft-cols>div:first-child{grid-column:auto}}.trainers{gap:var(--s-5);display:grid}.trainer{gap:var(--s-5);align-items:start;display:grid}.tphoto{aspect-ratio:5/6;object-fit:cover;object-position:50% 20%;border:var(--line);width:100%;max-width:210px;display:block}.tphoto-empty{background:var(--paper-alt);border:1px dashed var(--rule-strong);color:var(--ink-faint);place-items:center;font-size:1.6rem;display:grid}.tbody h3{font-size:var(--fs-h3);margin:var(--s-2) 0}.tbody .list-dot{margin:var(--s-4) 0 var(--s-6)}.tcap{margin-top:var(--s-2);font-size:var(--fs-xs);color:var(--ink-faint);display:block}@media (width>=760px){.trainer{gap:var(--s-7);grid-template-columns:210px 1fr}.trainers{gap:var(--s-7)}}.steps{list-style:none;display:grid}.step{gap:var(--s-2) var(--s-4);padding:var(--s-4) 0;grid-template-columns:2.4rem 1fr;display:grid;position:relative}.step:not(:last-child):after{content:"";top:3.5rem;left:calc(1.2rem - .5px);bottom:calc(var(--s-4) * -1);background:var(--rule-strong);width:1px;position:absolute}.step-n{border:var(--line-strong);background:var(--paper);width:2.4rem;height:2.4rem;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink);transition:border-color var(--dur-base),background-color var(--dur-base);border-radius:50%;place-items:center;display:grid}.step:hover .step-n{border-color:var(--mint);background:var(--mint-wash)}.step h4{font-size:var(--fs-h4);justify-self:start;margin-top:.45rem}.step p{font-size:var(--fs-base-sm);color:var(--ink-soft);grid-column:2;max-width:52ch}.step .file{grid-column:2;justify-self:start}@media (width>=800px){.step{grid-template-columns:2.4rem 1fr auto}.step .file{grid-area:1/3;margin-top:.45rem}}.dl{border:var(--line-strong);background:var(--paper)}.dl-top{justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-4) var(--s-6);border-bottom:var(--line);flex-wrap:wrap;display:flex}.dl-upd{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--norma-deep)}.dl-main{gap:var(--s-5);padding:var(--s-6);align-items:end;display:grid}.dl-date{font-size:var(--fs-display-2);letter-spacing:-.035em;margin-top:var(--s-2)}.dl-count{align-items:baseline;gap:var(--s-2);display:flex}.dl-count b{font-family:var(--font-display);font-size:var(--fs-number);letter-spacing:-.04em;font-weight:600;line-height:1}.dl-count span{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink-soft)}.dl-know{border-top:var(--line);display:grid}.dl-know>div{padding:var(--s-5) var(--s-6)}.dl-know>div+div{border-top:var(--line)}.dl-know .list-dot{margin-top:var(--s-3)}@media (width>=720px){.dl-main{grid-template-columns:1fr auto}.dl-know{grid-template-columns:1fr 1fr}.dl-know>div+div{border-top:0;border-left:var(--line)}}.step-files{gap:var(--s-2);flex-wrap:wrap;grid-column:2;display:flex}.band-cta{margin-top:var(--s-8)}.faq{border-top:var(--line);max-width:820px}.faq-item{border-bottom:var(--line)}.faq-item summary{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-5) 0;cursor:pointer;font-family:var(--font-display);font-size:var(--fs-h4);letter-spacing:-.02em;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary i{flex:none;width:14px;height:14px;position:relative}.faq-item summary i:before,.faq-item summary i:after{content:"";background:var(--ink);height:1.5px;transition:transform var(--dur-base) var(--ease-out);position:absolute;top:50%;left:0;right:0}.faq-item summary i:after{transform:rotate(90deg)}.faq-item[open] summary i:after{transform:rotate(0)}.faq-item p{padding:0 0 var(--s-5);font-size:var(--fs-base-sm);color:var(--ink-soft);max-width:var(--measure)}.cal[data-astro-cid-646chrck]{isolation:isolate;scroll-margin-top:6rem;position:relative}.cal-aurora[data-astro-cid-646chrck]{z-index:-1;pointer-events:none;position:absolute;inset:-18% -14% -8%;-webkit-mask:radial-gradient(62% 62% at 50% 45%,#000 45%,#0000 75%);mask:radial-gradient(62% 62% at 50% 45%,#000 45%,#0000 75%)}.cal-aurora[data-astro-cid-646chrck] i[data-astro-cid-646chrck]{filter:blur(80px);opacity:.6;animation:cal-drift 24s var(--ease-out) infinite alternate;border-radius:50%;position:absolute}.cal-aurora[data-astro-cid-646chrck] i[data-astro-cid-646chrck]:first-child{background:hsl(var(--gt-1));width:48%;height:60%;top:12%;left:6%}.cal-aurora[data-astro-cid-646chrck] i[data-astro-cid-646chrck]:nth-child(2){background:hsl(var(--gt-3));opacity:.38;width:40%;height:55%;animation-delay:-9s;top:28%;right:4%}.cal-aurora[data-astro-cid-646chrck] i[data-astro-cid-646chrck]:nth-child(3){background:hsl(var(--gt-4));width:34%;height:45%;animation-delay:-15s;top:-4%;left:34%}@keyframes cal-drift{to{transform:translate(4%,-3%)scale(1.08)}}@media (prefers-reduced-motion:reduce){.cal-aurora[data-astro-cid-646chrck] i[data-astro-cid-646chrck]{animation:none}}.cal-box[data-astro-cid-646chrck]{width:100%;position:relative;overflow:hidden}.cal-box[data-astro-cid-646chrck].is-loading,.cal-box[data-astro-cid-646chrck]:not(.is-on){min-height:570px}.cal-fallback[data-astro-cid-646chrck]{color:var(--ink-soft);font-size:var(--fs-sm);place-items:center;display:grid;position:absolute;inset:0}.cal-box[data-astro-cid-646chrck].is-on .cal-fallback[data-astro-cid-646chrck]{display:none}.cal-box[data-astro-cid-646chrck].is-loading:before{content:"";background:linear-gradient(90deg,transparent,var(--mint),transparent) -100% 0/60% 100% no-repeat,var(--mint-wash);border-radius:3px;width:64px;height:3px;margin:-1.5px 0 0 -32px;animation:1.1s ease-in-out infinite cal-sweep;position:absolute;top:50%;left:50%}@keyframes cal-sweep{to{background-position:250% 0,0 0}}.cal-note[data-astro-cid-646chrck]{margin-top:var(--s-4);text-align:center;font-size:var(--fs-sm);color:var(--ink-faint);text-wrap:pretty}.cal-note[data-astro-cid-646chrck] a[data-astro-cid-646chrck]{color:inherit;text-underline-offset:4px}.cal-note[data-astro-cid-646chrck] a[data-astro-cid-646chrck]:hover{color:var(--ink)}.cs[data-astro-cid-apeehwzt]{z-index:calc(var(--z-header) + 1);left:var(--s-4);bottom:var(--s-4);width:min(26rem,calc(100% - 2 * var(--s-4)));padding:var(--s-6);background:var(--paper);border:var(--line-strong);border-radius:var(--r-l);position:fixed;box-shadow:0 12px 40px #14171a24}.cs[data-astro-cid-apeehwzt][hidden]{display:none}.cs-t[data-astro-cid-apeehwzt]{font-family:var(--font-display,inherit);letter-spacing:-.02em;padding-right:var(--s-6);font-weight:600}.cs-p[data-astro-cid-apeehwzt]{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--ink-soft);line-height:1.55}.cs-p[data-astro-cid-apeehwzt] a[data-astro-cid-apeehwzt]{color:var(--ink)}.cs-b[data-astro-cid-apeehwzt]{gap:var(--s-3);margin-top:var(--s-5);grid-template-columns:1fr 1fr;display:grid}.cs-b[data-astro-cid-apeehwzt] .btn[data-astro-cid-apeehwzt]{justify-content:center;padding:.7rem 1rem}.cs-x[data-astro-cid-apeehwzt]{top:var(--s-3);right:var(--s-3);border-radius:var(--r-pill);width:2rem;height:2rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:1.4rem;line-height:1;position:absolute}.cs-x[data-astro-cid-apeehwzt]:hover{background:var(--paper-deep);color:var(--ink)}
