[data-zone=frontend]{--bg:#edede5;--bg-2:#e3e4d9;--paper:#f7f6f0;--ink:#0b130e;--ink-2:#3e4a40;--ink-3:#7a8579;--line:#0b130e14;--line-2:#0b130e24;--moss:#2f6a3a;--moss-d:#1f4a28;--moss-l:#b5d58e;--moss-h:#dbf0ae;--signal:#6ee870;--amber:#e0a04a;--rose:#e07a6e;--azure:#7ab5e0;--violet:#b89eff;--sans:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;--mono:var(--font-geist-mono), ui-monospace, "JetBrains Mono", Menlo, monospace;--serif:var(--font-instrument-serif), ui-serif, Georgia, serif;--font-heading:var(--sans);--font-body:var(--sans);font-family:var(--font-body);--color-background:#edede5;--color-foreground:#0b130e;--color-card:#f7f6f0;--color-card-foreground:#0b130e;--color-popover:#f7f6f0;--color-popover-foreground:#0b130e;--color-primary:#1f4a28;--color-primary-foreground:#f7f6f0;--color-secondary:#e3e4d9;--color-secondary-foreground:#0b130e;--color-muted:#e3e4d9;--color-muted-foreground:#7a8579;--color-accent:#e3e4d9;--color-accent-foreground:#0b130e;--color-destructive:#c62f2f;--color-destructive-foreground:#f7f6f0;--color-border:#0b130e24;--color-input:#0b130e24;--color-ring:#2f6a3a;color:var(--ink);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}[data-zone=frontend] .u-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:10.5px}[data-zone=frontend] .u-glass{-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);background:#f7f6f09e;border:1px solid #fff9}[data-zone=frontend].home-root{background:var(--bg);min-height:100vh;position:relative;overflow-x:clip}[data-zone=frontend] .home-main{z-index:1;position:relative}[data-zone=frontend] .wrap{max-width:1280px;margin:0 auto;padding:0 32px}[data-zone=frontend] .wrap--wide{max-width:1320px}[data-zone=frontend] .mesh{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}[data-zone=frontend] .mesh:before{content:"";filter:blur(60px)saturate(1.05);background:radial-gradient(35% 30% at 12% 12%,#b5d58ea6,#0000 60%),radial-gradient(30% 28% at 88% 18%,#2f6a3a59,#0000 60%),radial-gradient(45% 40% at 70% 80%,#e0a04a4d,#0000 60%),radial-gradient(40% 35% at 18% 78%,#b89eff33,#0000 60%),radial-gradient(30% 25%,#7ab5e033,#0000 60%);animation:28s ease-in-out infinite alternate mesh-drift;position:absolute;inset:-10%}[data-zone=frontend] .mesh:after{content:"";opacity:.1;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.7 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}@keyframes mesh-drift{0%{transform:translate(0)rotate(0)}50%{transform:translate(2%,-2%)rotate(2deg)}to{transform:translate(-2%,1%)rotate(-1.5deg)}}[data-zone=frontend] .home-main h1,[data-zone=frontend] .home-main h2,[data-zone=frontend] .home-main h3,[data-zone=frontend] .home-main h4{letter-spacing:-.015em;margin:0;font-weight:500}[data-zone=frontend] .it{color:var(--moss-d);font-weight:500}[data-zone=frontend] .nav{z-index:50;pointer-events:none;padding:0 16px;position:sticky;top:18px}[data-zone=frontend] .nav-pill{pointer-events:auto;-webkit-backdrop-filter:blur(28px)saturate(180%);backdrop-filter:blur(28px)saturate(180%);background:#f7f6f0c7;border:1px solid #ffffff8c;border-radius:999px;justify-content:space-between;align-items:center;gap:12px;max-width:940px;margin:0 auto;padding:10px 10px 10px 16px;display:flex;box-shadow:0 0 0 1px #0b130e0a,inset 0 1px #ffffffd9,0 10px 40px -10px #0b130e26,0 24px 60px -20px #0b130e2e}[data-zone=frontend] .logo{align-items:center;display:flex}[data-zone=frontend] .logo-img{width:auto;height:22px;display:block}[data-zone=frontend] .logo-mark{background:radial-gradient(circle at 30% 25%, #fff9, transparent 50%), linear-gradient(140deg, var(--moss-l), var(--moss-d));width:26px;height:26px;color:var(--paper);border-radius:8px;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid;box-shadow:inset 0 1px #fff9,inset 0 -2px 4px #00000040,0 2px 6px #1f4a2859}[data-zone=frontend] .nav-links{gap:4px;font-size:13px;display:flex}[data-zone=frontend] .nav-links a{color:var(--ink-2);border-radius:999px;padding:7px 12px;text-decoration:none;transition:background .15s,color .15s}[data-zone=frontend] .nav-links a:hover{color:var(--ink);background:#0b130e0d}[data-zone=frontend] .nav-actions,[data-zone=frontend] .nav-desktop-actions{align-items:center;gap:4px;display:flex}[data-zone=frontend] .nav-cta{background:linear-gradient(180deg, var(--ink), #1f2a22);color:var(--paper);white-space:nowrap;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #ffffff2e,0 4px 12px -2px #0b130e59}[data-zone=frontend] .nav-cta:hover{transform:translateY(-1px)}[data-zone=frontend] .nav-login{color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:13px;text-decoration:none;transition:background .15s,color .15s}[data-zone=frontend] .nav-login:hover{color:var(--ink);background:#0b130e0d}[data-zone=frontend] .nav-icon-btn{width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:background .15s,color .15s;display:grid;position:relative}[data-zone=frontend] .nav-icon-btn:hover{color:var(--ink);background:#0b130e0d}[data-zone=frontend] .nav-cart-badge{background:var(--moss);min-width:16px;height:16px;color:var(--paper);border-radius:999px;place-items:center;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:grid;position:absolute;top:1px;right:1px}[data-zone=frontend] .nav-burger{display:none}[data-zone=frontend] .user-menu{position:relative}[data-zone=frontend] .user-trigger{min-width:var(--shared-w,auto);background:linear-gradient(180deg, var(--moss), var(--moss-d));color:var(--paper);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:transform .15s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 1px #ffffff2e,0 4px 12px -2px #0b130e59}[data-zone=frontend] .user-trigger>span{text-align:left}[data-zone=frontend] .user-trigger:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 6px 16px -2px #0b130e66}[data-zone=frontend] .user-trigger .chev{opacity:.85;transition:transform .2s}[data-zone=frontend] .user-menu.is-open .user-trigger .chev{transform:rotate(180deg)}[data-zone=frontend] .user-dd{width:var(--shared-w,max-content);pointer-events:none;opacity:0;z-index:60;flex-direction:column;gap:6px;transition:opacity .18s,transform .22s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-6px)}[data-zone=frontend] .user-menu.is-open .user-dd{pointer-events:auto;opacity:1;transform:translateY(0)}[data-zone=frontend] .mini-pill{-webkit-backdrop-filter:blur(14px)saturate(160%);width:100%;color:var(--ink);text-align:left;white-space:nowrap;cursor:pointer;background:#f7f6f0d9;border-radius:999px;align-items:center;gap:10px;padding:8px 16px;font-family:inherit;font-size:13px;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -6px #0b130e2e,0 14px 30px -14px #0b130e2e}[data-zone=frontend] .mini-pill svg{color:var(--ink-2);flex-shrink:0}[data-zone=frontend] .mini-pill>span{flex:1}[data-zone=frontend] .mini-pill:hover{background:#f7f6f0;transform:translate(-2px)}[data-zone=frontend] .mini-pill:hover svg{color:var(--moss-d)}[data-zone=frontend] .mini-pill--exit{background:linear-gradient(180deg, var(--ink), #1f2a22);color:var(--paper);border:1px solid #0006;box-shadow:inset 0 1px #ffffff26,0 6px 18px -6px #0b130e4d,0 14px 30px -14px #0b130e4d}[data-zone=frontend] .mini-pill--exit svg{color:#f7f6f0cc}[data-zone=frontend] .mini-pill--exit:hover{background:linear-gradient(#1f2a22,#0b130e)}[data-zone=frontend] .mini-pill--exit:hover svg{color:var(--paper)}[data-zone=frontend] .user-menu.is-open .mini-pill{animation:.35s cubic-bezier(.2,.7,.2,1) backwards pillIn}[data-zone=frontend] .user-menu.is-open .mini-pill:first-child{animation-delay:40ms}[data-zone=frontend] .user-menu.is-open .mini-pill:nth-child(2){animation-delay:90ms}[data-zone=frontend] .user-menu.is-open .mini-pill:nth-child(3){animation-delay:.14s}[data-zone=frontend] .user-menu.is-open .mini-pill:nth-child(4){animation-delay:.19s}@keyframes pillIn{0%{opacity:0;transform:translateY(-6px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}[data-zone=frontend] .nav-mobile{pointer-events:auto;-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);background:#f7f6f0eb;border:1px solid #ffffff8c;border-radius:20px;flex-direction:column;gap:2px;max-width:940px;margin:8px auto 0;padding:10px;display:flex;box-shadow:0 0 0 1px #0b130e0a,0 20px 50px -16px #0b130e40}[data-zone=frontend] .nav-mobile a,[data-zone=frontend] .nav-mobile button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:14.5px;text-decoration:none;display:block}[data-zone=frontend] .nav-mobile a:active,[data-zone=frontend] .nav-mobile button:active{background:#0b130e0d}[data-zone=frontend] .nav-mobile-divider{background:var(--line);height:1px;margin:4px 6px}[data-zone=frontend] .nav-mobile-cta{font-weight:600;color:var(--moss-d)!important}[data-zone=frontend] .hero{perspective:1500px;transform-style:preserve-3d;padding:80px 0 100px;position:relative}[data-zone=frontend] .hero-inner{text-align:center;transform-style:preserve-3d;position:relative}[data-zone=frontend] .hero-eyebrow{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink-2);background:#f7f6f0a6;border:1px solid #fff9;border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 8px;font-size:12.5px;display:inline-flex;box-shadow:inset 0 1px #fffc,0 4px 14px -4px #0b130e1a}[data-zone=frontend] .hero-eyebrow .ic{background:linear-gradient(140deg, var(--moss-l), var(--moss));border-radius:50%;width:18px;height:18px;box-shadow:inset 0 1px #fff9,0 0 0 1px #1f4a2833}[data-zone=frontend] .hero h1{letter-spacing:-.045em;color:var(--ink);margin-top:28px;font-size:clamp(60px,7vw,108px);font-weight:500;line-height:1.08}[data-zone=frontend] .hero .sub{max-width:600px;color:var(--ink-2);margin:32px auto 0;font-size:18px;line-height:1.55}[data-zone=frontend] .hero-ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:40px;display:flex}[data-zone=frontend] .hero-microcopy{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-top:18px;font-size:11.5px}[data-zone=frontend] .btn{cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:14px 24px;font-family:inherit;font-size:14.5px;font-weight:500;text-decoration:none;transition:transform .15s,box-shadow .2s;display:inline-flex}[data-zone=frontend] .btn-primary{background:linear-gradient(180deg, #2a6f3a, var(--moss-d));color:var(--paper);box-shadow:inset 0 1px #ffffff40,inset 0 -2px 4px #0000002e,0 4px 14px -2px #1f4a2873,0 14px 30px -10px #1f4a2866}[data-zone=frontend] .btn-primary:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff4d,0 8px 22px -2px #1f4a288c,0 20px 40px -10px #1f4a2880}[data-zone=frontend] .btn-ghost{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);background:#f7f6f0a6;border:1px solid #ffffffb3;box-shadow:inset 0 1px #fffc,0 4px 14px -4px #0b130e1f}[data-zone=frontend] .btn-ghost:hover{transform:translateY(-2px)}[data-zone=frontend] .float{transform-style:preserve-3d;will-change:transform;pointer-events:auto;position:absolute}[data-zone=frontend] .float-code{width:450px;top:32%;left:-140px;transform:translateZ(-80px)rotateX(8deg)rotateY(14deg)rotate(-6deg)}[data-zone=frontend] .float-pr{width:360px;top:60%;right:-60px;transform:translateZ(-40px)rotateX(6deg)rotateY(-14deg)rotate(4deg)}[data-zone=frontend] .glass{border-radius:18px;box-shadow:inset 0 1px #fffc,inset 0 -1px #0000000a,0 1px #0b130e0a,0 20px 50px -16px #0b130e38,0 40px 80px -20px #0b130e2e}[data-zone=frontend] .codecard{overflow:hidden}[data-zone=frontend] .codecard-head{border-bottom:1px solid var(--line);background:linear-gradient(#ffffff80,#0000);align-items:center;gap:8px;padding:11px 14px;display:flex}[data-zone=frontend] .codecard-dots{gap:6px;display:flex}[data-zone=frontend] .codecard-dots span{background:var(--line-2);border-radius:50%;width:10px;height:10px}[data-zone=frontend] .codecard-dots span:first-child{background:var(--rose)}[data-zone=frontend] .codecard-dots span:nth-child(2){background:var(--amber)}[data-zone=frontend] .codecard-dots span:nth-child(3){background:var(--moss)}[data-zone=frontend] .codecard-title{font-family:var(--mono);color:var(--ink-3);margin-left:4px;font-size:11px}[data-zone=frontend] .codecard-body{font-family:var(--mono);padding:14px 0;font-size:12px;line-height:1.8}[data-zone=frontend] .codecard-line{grid-template-columns:36px 1fr;align-items:center;display:grid}[data-zone=frontend] .codecard-line .lln{text-align:right;color:var(--ink-3);padding-right:12px;font-size:10.5px}[data-zone=frontend] .codecard-code{white-space:nowrap;text-align:left;min-width:0;overflow:hidden}[data-zone=frontend] .tk-kw{color:#c04b7e}[data-zone=frontend] .tk-fn{color:#2e5bb8}[data-zone=frontend] .tk-str{color:var(--moss-d)}[data-zone=frontend] .tk-com{color:var(--ink-3)}[data-zone=frontend] .tk-var{color:var(--ink)}[data-zone=frontend] .prcard{text-align:left;padding:16px}[data-zone=frontend] .prcard-head{font-family:var(--mono);color:var(--ink-3);align-items:center;gap:10px;margin-bottom:12px;font-size:11px;display:flex}[data-zone=frontend] .prcard-head .pip{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));border-radius:6px;width:20px;height:20px;box-shadow:inset 0 1px #fff6}[data-zone=frontend] .prcard-body{gap:10px;display:flex}[data-zone=frontend] .prcard-avatar{background:var(--ink);border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid;overflow:hidden;box-shadow:inset 0 1px #fff3,0 2px 6px #1f4a2840}[data-zone=frontend] .prcard-avatar img{width:20px;height:20px}[data-zone=frontend] .prcard-meta{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-bottom:4px;font-size:11.5px}[data-zone=frontend] .prcard-meta b{color:var(--ink);font-size:13px;font-weight:600}[data-zone=frontend] .prcard-msg{color:var(--ink);font-size:13.5px;line-height:1.5}[data-zone=frontend] .prcard-msg code{font-family:var(--mono);color:var(--moss-d);background:#1f4a2814;border-radius:3px;padding:1px 5px;font-size:11.5px}[data-zone=frontend] .prcard-msg em{color:var(--moss-d);font-style:normal;font-weight:600}[data-zone=frontend] .section{padding:100px 0;position:relative}[data-zone=frontend] .section-head{text-align:center;margin-bottom:56px}[data-zone=frontend] .section-eyebrow{letter-spacing:.12em;color:var(--moss-d);margin-bottom:16px;font-size:11px;display:inline-block}[data-zone=frontend] .section h2{letter-spacing:-.035em;max-width:880px;margin:0 auto;font-size:clamp(38px,6vw,76px);font-weight:500;line-height:1}[data-zone=frontend] .section .sub{max-width:540px;color:var(--ink-2);margin:20px auto 0;font-size:17px;line-height:1.55}[data-zone=frontend] .trust{padding:0 0 24px;position:relative}[data-zone=frontend] .trust-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}[data-zone=frontend] .trust-pill{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);color:var(--ink);border:1px solid #ffffff9e;border-radius:999px;align-items:center;gap:10px;padding:10px 16px 10px 12px;font-size:13px;display:inline-flex;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -8px #0b130e26}[data-zone=frontend] .trust-pill .ic{width:22px;height:22px;color:var(--paper);background:linear-gradient(140deg, var(--moss-l), var(--moss-d));border-radius:7px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff80,0 2px 6px #1f4a2840}[data-zone=frontend] .trust-pill .ic svg{width:12px;height:12px}[data-zone=frontend] .peek{padding:32px 0 64px}[data-zone=frontend] .peek-inner{max-width:820px;margin:0 auto;position:relative}[data-zone=frontend] .peek-inner--spaced{margin-top:36px}[data-zone=frontend] .term{--t-bg:#18191c;--t-bar:#26272c;--t-fg:#e7e7e9;--t-dim:#8b8e96;--t-line:#ffffff29;--t-coral:#d54e53;--t-green:#82d093;--t-amber:#e3b341;--t-path:#6aa9e0;background:var(--t-bg);font-family:var(--mono);border:1px solid #00000073;border-radius:12px;overflow:hidden;box-shadow:0 18px 50px -16px #0b130e73,0 40px 90px -24px #0b130e66}[data-zone=frontend] .term-bar{background:var(--t-bar);align-items:center;gap:8px;padding:10px 14px;display:flex;position:relative}[data-zone=frontend] .term-dots{gap:8px;display:flex}[data-zone=frontend] .term-dots span{border-radius:50%;width:12px;height:12px}[data-zone=frontend] .term-dots span:first-child{background:#ff5f57}[data-zone=frontend] .term-dots span:nth-child(2){background:#febc2e}[data-zone=frontend] .term-dots span:nth-child(3){background:#28c840}[data-zone=frontend] .term-title{color:var(--t-dim);font-size:12px;position:absolute;left:50%;transform:translate(-50%)}[data-zone=frontend] .term-body{color:var(--t-fg);height:440px;padding:20px 24px 26px;font-size:13.5px;line-height:1.7;overflow:hidden}[data-zone=frontend] .term-line{white-space:pre}[data-zone=frontend] .term-fg{color:var(--t-fg)}[data-zone=frontend] .term-dim{color:var(--t-dim)}[data-zone=frontend] .term-bold{color:#fff;font-weight:700}[data-zone=frontend] .term-ok{color:var(--t-green)}[data-zone=frontend] .term-amber{color:var(--t-amber)}[data-zone=frontend] .term-path{color:var(--t-path)}[data-zone=frontend] .term-prompt{color:var(--t-green)}[data-zone=frontend] .term-chevron{color:var(--t-dim)}[data-zone=frontend] .term-cursor{vertical-align:text-bottom;background:var(--t-fg);width:8px;height:1.05em;margin-left:1px;animation:1.05s step-end infinite term-blink;display:inline-block}[data-zone=frontend] .term-block{background:var(--t-fg);color:var(--t-bg);animation:1.05s step-end infinite term-blink}@keyframes term-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}[data-zone=frontend] .term-boot{align-items:flex-start;gap:16px;margin:16px 0 4px;display:flex}[data-zone=frontend] .term-mascot{flex:none;width:92px;height:auto}[data-zone=frontend] .term-mascot rect{fill:var(--t-coral)}[data-zone=frontend] .term-boot-text{margin-top:-2px;line-height:1.5}[data-zone=frontend] .term-input{border-top:1px solid var(--t-line);border-bottom:1px solid var(--t-line);margin-top:16px;padding:7px 0}[data-zone=frontend] .term-cmd-token{color:var(--t-path)}[data-zone=frontend] .term-skills{margin-top:10px;animation:.18s term-fade}[data-zone=frontend] .term-skill{opacity:1;max-height:1.8em;transition:max-height .26s,opacity .2s;transition-delay:calc(var(--i,0) * 30ms);gap:18px;display:flex;overflow:hidden}[data-zone=frontend] .term-skill.is-hidden{opacity:0;max-height:0}[data-zone=frontend] .term-skill-name{width:184px;color:var(--t-fg);flex:none}[data-zone=frontend] .term-skill-desc{min-width:0;color:var(--t-dim);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}[data-zone=frontend] .term-skill.is-sel .term-skill-desc{color:var(--t-path)}@keyframes term-fade{0%{opacity:0}to{opacity:1}}[data-zone=frontend] .term-status{flex-direction:column;gap:4px;margin-top:10px;display:flex}[data-zone=frontend] .term-status-row{justify-content:space-between;display:flex}[data-zone=frontend] .term-output{margin-top:18px}[data-zone=frontend] .term-out--ok:first-of-type{margin-top:8px}[data-zone=frontend] .term-out--run{margin-top:12px}[data-zone=frontend] .term-msg{background:#ffffff0f;margin:14px -24px 0;padding:4px 24px}[data-zone=frontend] .term-think{color:var(--t-coral);margin-top:16px}[data-zone=frontend] .term-think-star{animation:1.3s ease-in-out infinite term-pulse;display:inline-block}[data-zone=frontend] .term-think-dots:after{content:".";animation:1.5s infinite term-ellipsis}@keyframes term-pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes term-ellipsis{0%{content:"."}33%{content:".."}66%{content:"..."}}@media (max-width:640px){[data-zone=frontend] .term-body{padding:16px;font-size:11.5px}[data-zone=frontend] .term-mascot{width:72px}[data-zone=frontend] .term-skill-name{width:148px}[data-zone=frontend] .term-msg{margin-left:-16px;margin-right:-16px;padding:4px 16px}}@media (prefers-reduced-motion:reduce){[data-zone=frontend] .term-cursor,[data-zone=frontend] .term-block,[data-zone=frontend] .term-think-star,[data-zone=frontend] .term-think-dots:after{animation:none}}[data-zone=frontend] .peek-caption{text-align:center;font-family:var(--mono);color:var(--ink-3);letter-spacing:.05em;margin-top:18px;font-size:11.5px}[data-zone=frontend] .stats{padding:32px 0 88px;position:relative}[data-zone=frontend] .stats-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}[data-zone=frontend] .stat{border-radius:18px;padding:22px 24px;box-shadow:inset 0 1px #fffc,0 8px 28px -10px #0b130e2e}[data-zone=frontend] .stat .v{letter-spacing:-.04em;color:var(--moss-d);text-shadow:1px 1px #1f4a281a,2px 2px #1f4a2814,3px 3px #1f4a280f,4px 4px 8px #1f4a2826;margin-bottom:8px;font-size:56px;font-weight:500;line-height:1}[data-zone=frontend] .stat .v .small{color:var(--moss);font-size:28px}[data-zone=frontend] .stat .l{font-family:var(--mono);color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:11px}[data-zone=frontend] .stat .d{color:var(--ink-2);font-size:13px;line-height:1.5}[data-zone=frontend] .bento{perspective:1500px;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(220px,auto);gap:14px;display:grid}[data-zone=frontend] .tile{transform-style:preserve-3d;will-change:transform;background:#f7f6f0a6;border:1px solid #ffffff9e;border-radius:22px;padding:26px;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,inset 0 -1px #0000000a,0 8px 24px -10px #0b130e26,0 24px 50px -20px #0b130e33}[data-zone=frontend] .tile:hover{box-shadow:inset 0 1px #ffffffe6,0 14px 36px -10px #0b130e38,0 40px 80px -20px #0b130e47}[data-zone=frontend] .tile-tag{color:var(--moss-d);align-items:center;gap:7px;margin-bottom:14px;display:inline-flex}[data-zone=frontend] .tile-tag:before{content:"";background:var(--moss);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 2px #6ee87040}[data-zone=frontend] .tile h3{letter-spacing:-.02em;font-size:24px;line-height:1.15}[data-zone=frontend] .tile p{color:var(--ink-2);margin-top:12px;font-size:14.5px;line-height:1.55}[data-zone=frontend] .tile>*{transform:translateZ(20px)}[data-zone=frontend] .tile-a{grid-area:span 2/span 4}[data-zone=frontend] .tile-b,[data-zone=frontend] .tile-c{grid-column:span 2}[data-zone=frontend] .orb{pointer-events:none;border-radius:50%;position:absolute;transform:translateZ(50px)}[data-zone=frontend] .orb-1{background:radial-gradient(circle at 30% 30%, var(--moss-l), var(--moss-d) 80%);opacity:.95;width:180px;height:180px;bottom:-40px;right:-40px;box-shadow:inset -8px -10px 20px #00000040,inset 4px 6px 14px #ffffff73,0 30px 60px -16px #1f4a2873}[data-zone=frontend] .tile-accent{color:var(--moss);opacity:.09;pointer-events:none;position:absolute;top:-40px;right:-36px;transform:rotate(12deg)}[data-zone=frontend] .gh-review{border:1px solid var(--line-2);font-family:var(--sans);color:#1f2328;text-align:left;background:#fbfaf6;border-radius:12px;margin-top:22px;overflow:hidden;box-shadow:0 3px 14px -3px #0b130e21}[data-zone=frontend] .gh-review .gh-diff-head{border-bottom:1px solid var(--line-2);align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}[data-zone=frontend] .gh-review .gh-chevron{color:#59636e;flex:none}[data-zone=frontend] .gh-review .gh-file{font-family:var(--mono);color:#1f2328;font-size:12px;font-weight:600}[data-zone=frontend] .gh-review .gh-resolve{color:#59636e;white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-size:12px;display:inline-flex}[data-zone=frontend] .gh-review .gh-diff{font-family:var(--mono);background:#e6ffec;font-size:12px;line-height:20px;overflow-x:auto}[data-zone=frontend] .gh-review .gh-line{width:max-content;min-width:100%;display:flex}[data-zone=frontend] .gh-review .gh-ln{text-align:right;color:#1f23288c;-webkit-user-select:none;user-select:none;background:#ccffd8;flex:none;width:42px;padding-right:10px}[data-zone=frontend] .gh-review .gh-sign{text-align:center;color:#1f232899;flex:none;width:22px}[data-zone=frontend] .gh-review .gh-code{white-space:pre;padding-right:16px}[data-zone=frontend] .gh-review .gh-diff::-webkit-scrollbar{height:12px}[data-zone=frontend] .gh-review .gh-diff::-webkit-scrollbar-track{background:#f6f8fa}[data-zone=frontend] .gh-review .gh-diff::-webkit-scrollbar-thumb{background:#afb8c1;border:3px solid #f6f8fa;border-radius:6px}[data-zone=frontend] .gh-review .gh-comment{gap:12px;padding:16px;display:flex}[data-zone=frontend] .gh-review .gh-avatar{background:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}[data-zone=frontend] .gh-review .gh-avatar img{width:26px;height:26px}[data-zone=frontend] .gh-review .gh-comment-main{flex:1;min-width:0}[data-zone=frontend] .gh-review .gh-comment-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}[data-zone=frontend] .gh-review .gh-user{color:#1f2328;font-size:14px;font-weight:600}[data-zone=frontend] .gh-review .gh-time{color:#59636e;font-size:12px}[data-zone=frontend] .gh-review .gh-link{color:#59636e}[data-zone=frontend] .gh-review .gh-link:hover{text-decoration:underline}[data-zone=frontend] .gh-review .gh-collab{border:1px solid var(--line-2);color:#59636e;border-radius:2em;margin-left:auto;padding:0 7px;font-size:11px;line-height:18px}[data-zone=frontend] .gh-review .gh-kebab{color:#59636e;flex:none}[data-zone=frontend] .gh-review .gh-text{color:#1f2328;margin:0 0 12px;font-size:14px;line-height:1.5}[data-zone=frontend] .gh-review .gh-inline{font-family:var(--mono);background:var(--bg);white-space:nowrap;border-radius:6px;padding:.2em .4em;font-size:85%}[data-zone=frontend] .gh-review .gh-codeblock{background:var(--bg);font-family:var(--mono);color:#1f2328;border-radius:6px;margin-bottom:12px;padding:12px 44px 12px 16px;font-size:13px;position:relative;overflow-x:auto}[data-zone=frontend] .gh-review .gh-copy{border:1px solid var(--line-2);color:#59636e;cursor:pointer;background:#fbfaf6;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:8px;right:8px}[data-zone=frontend] .progs{perspective:1500px;grid-template-columns:repeat(2,1fr);gap:16px;display:grid}[data-zone=frontend] .prog{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);transform-style:preserve-3d;will-change:transform;color:inherit;background:#f7f6f0ad;border:1px solid #ffffff9e;border-radius:24px;flex-direction:column;text-decoration:none;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,0 12px 30px -14px #0b130e33,0 36px 70px -24px #0b130e47}[data-zone=frontend] .prog-hero{aspect-ratio:2;background:#0c1410;border-bottom:1px solid #0b130e0f;position:relative;overflow:hidden}[data-zone=frontend] .prog-hero img,[data-zone=frontend] .progc-hero img,[data-zone=frontend] .blogc-cover img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}[data-zone=frontend] .prog:hover .prog-hero img{transform:scale(1.03)}[data-zone=frontend] .prog:hover,[data-zone=frontend] .course:hover{transform:scale(1.008)}[data-zone=frontend] .prog-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000 70%,#0b130e2e 100%),linear-gradient(#ffffff0f,#0000 25%);position:absolute;inset:0}[data-zone=frontend] .prog-body{flex-direction:column;flex:1;padding:28px 30px 30px;display:flex}[data-zone=frontend] .prog-name{letter-spacing:-.025em;color:var(--ink);font-size:30px;font-weight:500;line-height:1.05}[data-zone=frontend] .prog-tag{color:var(--ink-2);margin-top:12px;font-size:14.5px;line-height:1.55}[data-zone=frontend] .prog-divider{background:linear-gradient(90deg,#0000,#0b130e1a,#0000);height:1px;margin:26px 0 22px}[data-zone=frontend] .prog-stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}[data-zone=frontend] .prog-stat{background:#f7f6f08c;border:1px solid #0b130e0f;border-radius:14px;padding:14px 16px;box-shadow:inset 0 1px #ffffffb3}[data-zone=frontend] .prog-stat .v{letter-spacing:-.02em;color:var(--ink);font-feature-settings:"tnum";font-size:22px;font-weight:500;line-height:1}[data-zone=frontend] .prog-stat .l{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:8px;font-size:10px}[data-zone=frontend] .prog-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:26px;display:flex}[data-zone=frontend] .prog-price{letter-spacing:-.025em;color:var(--ink);font-feature-settings:"tnum";font-size:36px;font-weight:500;line-height:1}[data-zone=frontend] .prog-price .from{font-family:var(--mono);color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;margin-right:6px;font-size:10px}[data-zone=frontend] .prog-price-meta{letter-spacing:.06em;margin-top:6px;font-size:10px;display:block}[data-zone=frontend] .prog-link{background:linear-gradient(180deg, #2a6f3a, var(--moss-d));color:var(--paper);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:11px 18px;font-size:13.5px;font-weight:500;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #fff3,inset 0 -2px 4px #0000002e,0 4px 12px -2px #1f4a2866,0 10px 24px -8px #1f4a2866}[data-zone=frontend] .prog:hover .prog-link{transform:translateY(-1px)}[data-zone=frontend] .courses-grid{perspective:1500px;grid-template-columns:repeat(5,1fr);gap:12px;display:grid}[data-zone=frontend] .course{-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);transform-style:preserve-3d;will-change:transform;min-height:220px;color:inherit;background:#f7f6f099;border:1px solid #ffffff9e;border-radius:18px;flex-direction:column;padding:20px;text-decoration:none;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -8px #0b130e26,0 18px 40px -16px #0b130e2e}[data-zone=frontend] .course-logo{border:1px solid var(--line-2);width:48px;height:48px;color:var(--ink-3);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:center;background:#f7f6f0b3;border-radius:12px;align-self:flex-start;place-items:center;margin-bottom:16px;font-size:9.5px;line-height:1.1;display:grid;overflow:hidden}[data-zone=frontend] .course-logo img,[data-zone=frontend] .cc-logo-img,[data-zone=frontend] .cd-course-logo img,[data-zone=frontend] .cd-prog-card-logo img,[data-zone=frontend] .blogc-av img,[data-zone=frontend] .article-byline-av img{object-fit:cover;width:100%;height:100%}[data-zone=frontend] .course-name{letter-spacing:-.01em;color:var(--ink);min-height:2.6em;font-size:14.5px;font-weight:500;line-height:1.3}[data-zone=frontend] .course-desc{color:var(--ink-2);flex:1;margin-top:6px;font-size:12.5px;line-height:1.5}[data-zone=frontend] .course-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:16px;display:flex}[data-zone=frontend] .course-price{letter-spacing:-.015em;color:var(--ink);font-feature-settings:"tnum";font-size:18px;font-weight:500;line-height:1}[data-zone=frontend] .course-link{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);white-space:nowrap;background:#f7f6f0b3;border:1px solid #ffffffb3;border-radius:999px;align-items:center;gap:4px;padding:7px 14px;font-size:11.5px;font-weight:500;transition:transform .15s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 1px #fffc,0 3px 10px -4px #0b130e1f}[data-zone=frontend] .course:hover .course-link{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffe6,0 5px 14px -4px #0b130e2e}[data-zone=frontend] .upgrade-strip{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);text-align:center;color:var(--ink-2);border-radius:14px;margin-top:22px;padding:16px 20px;font-size:14px;box-shadow:inset 0 1px #fffc,0 6px 18px -8px #0b130e1f}[data-zone=frontend] .upgrade{border-top:1px solid var(--line-2);text-align:center;margin-top:64px;padding:48px 0 64px}[data-zone=frontend] .upgrade-eyebrow{letter-spacing:.14em;color:var(--moss-d);font-size:11px}[data-zone=frontend] .upgrade-h{letter-spacing:-.022em;max-width:720px;color:var(--ink);text-wrap:balance;margin:14px auto 0;font-size:30px;font-weight:500;line-height:1.15}[data-zone=frontend] .upgrade-p{max-width:620px;color:var(--ink-2);margin:14px auto 0;font-size:14.5px;line-height:1.6}[data-zone=frontend] .upgrade-items{grid-template-columns:repeat(3,1fr);max-width:980px;margin:36px auto 0;display:grid}[data-zone=frontend] .upgrade-item{text-align:center;padding:0 24px;position:relative}[data-zone=frontend] .upgrade-item+.upgrade-item:before{content:"";background:var(--line-2);width:1px;position:absolute;top:8px;bottom:8px;left:0}[data-zone=frontend] .upgrade-mark{background:var(--moss-d);width:26px;height:26px;color:var(--paper);font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;font-size:13px;display:inline-flex;box-shadow:0 4px 10px -3px #1f4a2866}[data-zone=frontend] .upgrade-item .t{color:var(--ink);letter-spacing:-.01em;font-size:15.5px;font-weight:500}[data-zone=frontend] .upgrade-item .d{max-width:240px;color:var(--ink-2);margin:6px auto 0;font-size:13px;line-height:1.5}[data-zone=frontend] .upgrade-cta{background:linear-gradient(180deg, #2a6f3a, var(--moss-d));color:var(--paper);border-radius:999px;align-items:center;gap:6px;margin-top:36px;padding:11px 18px;font-size:13px;font-weight:500;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #fff3,inset 0 -2px 4px #0000002e,0 4px 12px -2px #1f4a2866}[data-zone=frontend] .upgrade-cta:hover{transform:translateY(-1px)}[data-zone=frontend] .testi-grid{perspective:1500px;grid-template-columns:repeat(3,1fr);gap:14px;display:grid}[data-zone=frontend] .testi{transform-style:preserve-3d;will-change:transform;border:1px solid #ffffff9e;border-radius:20px;flex-direction:column;gap:20px;padding:24px;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -10px #0b130e26,0 24px 50px -20px #0b130e2e}[data-zone=frontend] .testi-quote{color:var(--ink);flex:1;font-size:14.5px;line-height:1.6}[data-zone=frontend] .testi-quote:before{content:"“";font-family:var(--serif);color:var(--moss);vertical-align:-10px;margin-right:4px;font-size:38px;line-height:0}[data-zone=frontend] .testi-quote mark{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#b5d58e8c;border-radius:3px;padding:.1em .25em}[data-zone=frontend] .testi-foot{align-items:center;gap:12px;display:flex}[data-zone=frontend] .testi-avatar{background:radial-gradient(circle at 30% 25%, #ffffff8c, transparent 50%), linear-gradient(140deg, var(--moss-l), var(--moss-d));width:36px;height:36px;color:var(--paper);border-radius:50%;flex:0 0 36px;place-items:center;font-size:12px;font-weight:700;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 4px 10px #1f4a284d}[data-zone=frontend] .testi-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}[data-zone=frontend] .testi-name{align-items:center;gap:6px;font-size:13.5px;font-weight:500;line-height:1.3;display:flex}[data-zone=frontend] .testi-linkedin{color:#0a66c2;transition:opacity .15s;display:inline-flex}[data-zone=frontend] .testi-linkedin:hover{opacity:.7}[data-zone=frontend] .testi-title{color:var(--ink-3);font-size:11.5px;line-height:1.3;font-family:var(--mono);letter-spacing:.02em;margin-top:2px}[data-zone=frontend] .instr-wrap{max-width:1100px;margin:0 auto;position:relative}[data-zone=frontend] .instr{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#f7f6f0a8;border:1px solid #ffffff9e;border-radius:24px;grid-template-columns:1fr 520px;align-items:stretch;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,0 14px 36px -12px #0b130e33,0 40px 80px -24px #0b130e40}[data-zone=frontend] .instr-content{border-right:1px solid #0b130e14;flex-direction:column;padding:44px 48px;display:flex}[data-zone=frontend] .instr-photo{isolation:isolate;background:radial-gradient(55% 38% at 50% 28%,#f4d89a2e,#f4d89a00 70%),linear-gradient(#11231a 0%,#1e3a28 50%,#091610 100%);justify-content:center;align-items:flex-end;padding:32px 36px 0;display:flex;position:relative;overflow:hidden}[data-zone=frontend] .instr-photo:before{content:"";z-index:0;pointer-events:none;background-image:linear-gradient(90deg,#ffffff06 1px,#0000 1px),linear-gradient(#ffffff06 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 30%,#0000 90%);mask-image:radial-gradient(80% 80%,#000 30%,#0000 90%)}[data-zone=frontend] .instr-photo img{z-index:2;object-fit:contain;filter:drop-shadow(0 16px 22px #00000073);width:100%;height:auto;display:block;position:relative}[data-zone=frontend] .instr-name{letter-spacing:-.025em;font-size:36px;font-weight:500;line-height:1.05}[data-zone=frontend] .instr-cred{letter-spacing:.06em;margin-top:10px;font-size:11.5px}[data-zone=frontend] .instr-bio{color:var(--ink);flex-direction:column;gap:16px;max-width:560px;margin-top:28px;font-size:16px;line-height:1.6;display:flex}[data-zone=frontend] .instr-bio p{margin:0}[data-zone=frontend] .instr-bio em{color:var(--moss-d);font-style:normal;font-weight:500}[data-zone=frontend] .instr-links{flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:32px;display:flex}[data-zone=frontend] .instr-link{color:var(--ink);background:#f7f6f0b3;border:1px solid #fff9;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #fffc,0 4px 12px -4px #0b130e1f}[data-zone=frontend] .instr-link:hover{transform:translateY(-1px)}[data-zone=frontend] .instr-link:after{content:"↗";opacity:.55}[data-zone=frontend] .faq-list{flex-direction:column;gap:8px;max-width:760px;margin:0 auto;display:flex}[data-zone=frontend] .faq-item{-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);background:#f7f6f099;border-radius:14px;transition:box-shadow .2s;overflow:hidden;box-shadow:inset 0 1px #fffc,0 4px 14px -6px #0b130e1f}[data-zone=frontend] .faq-item[open]{box-shadow:inset 0 1px #ffffffe6,0 10px 30px -10px #0b130e33}[data-zone=frontend] .faq-item summary{cursor:pointer;color:var(--ink);letter-spacing:-.005em;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-size:15.5px;font-weight:500;list-style:none;display:flex}[data-zone=frontend] .faq-item summary::-webkit-details-marker{display:none}[data-zone=frontend] .faq-icon{width:28px;height:28px;color:var(--moss-d);background:#f7f6f0cc;border:1px solid #fff9;border-radius:50%;flex-shrink:0;place-items:center;font-size:16px;font-weight:500;transition:transform .2s;display:grid;box-shadow:inset 0 1px #ffffffe6,0 2px 6px -2px #0b130e1a}[data-zone=frontend] .faq-item[open] .faq-icon{background:linear-gradient(180deg, var(--moss), var(--moss-d));color:var(--paper);border-color:#0000;transform:rotate(45deg)}[data-zone=frontend] .faq-body{color:var(--ink-2);max-width:620px;padding:0 22px 20px;font-size:14.5px;line-height:1.6}[data-zone=frontend] .cta{text-align:center;padding:120px 0 100px;position:relative}[data-zone=frontend] .cta h2{letter-spacing:-.035em;max-width:880px;margin:0 auto;font-size:clamp(38px,6vw,80px);font-weight:500;line-height:1}[data-zone=frontend] .cta .sub{max-width:540px;color:var(--ink-2);margin:28px auto 36px;font-size:17px;line-height:1.55}[data-zone=frontend] .cta-ctas{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}[data-zone=frontend] .site-footer{z-index:1;border-top:1px solid var(--line);background:var(--bg);padding:64px 0 32px;position:relative}[data-zone=frontend] .foot-top{grid-template-columns:minmax(220px,1fr) 2.4fr;gap:56px;display:grid}[data-zone=frontend] .foot-brand{flex-direction:column;gap:16px;max-width:300px;display:flex}[data-zone=frontend] .foot-logo{letter-spacing:-.005em;color:var(--ink);align-items:center;gap:10px;font-size:14px;font-weight:500;text-decoration:none;display:flex}[data-zone=frontend] .foot-tagline{color:var(--ink-2);font-size:13.5px;line-height:1.55}[data-zone=frontend] .foot-socials{gap:10px;display:flex}[data-zone=frontend] .foot-ic{width:36px;height:36px;color:var(--ink-2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f6f099;border-radius:999px;place-items:center;transition:transform .15s,color .15s;display:grid;box-shadow:inset 0 1px #ffffffb3,0 4px 12px -4px #0b130e1a}[data-zone=frontend] .foot-ic:hover{color:var(--moss-d);transform:translateY(-2px)}[data-zone=frontend] .foot-ic svg{width:16px;height:16px}[data-zone=frontend] .foot-cols{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}[data-zone=frontend] .foot-col h4{letter-spacing:.1em;margin:0 0 16px;font-size:11px;font-weight:500}[data-zone=frontend] .foot-col ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}[data-zone=frontend] .foot-col a{color:var(--ink-2);font-size:13.5px;line-height:1.4;text-decoration:none;transition:color .15s}[data-zone=frontend] .foot-col a:hover{color:var(--moss-d)}[data-zone=frontend] .foot-bottom{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);margin-top:56px;padding-top:24px;font-size:11px}@media (max-width:1180px){[data-zone=frontend] .float{display:none}}@media (max-width:1024px){[data-zone=frontend] .courses-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:960px){[data-zone=frontend] .stats-grid,[data-zone=frontend] .testi-grid{grid-template-columns:repeat(2,1fr)}[data-zone=frontend] .upgrade-items{grid-template-columns:1fr;gap:28px}[data-zone=frontend] .upgrade-item+.upgrade-item:before{display:none}[data-zone=frontend] .bento{grid-template-columns:1fr}[data-zone=frontend] .tile-a,[data-zone=frontend] .tile-b,[data-zone=frontend] .tile-c{grid-area:auto/span 1}[data-zone=frontend] .instr{grid-template-columns:1fr}[data-zone=frontend] .instr-content{border-bottom:1px solid #0b130e14;border-right:none}}@media (max-width:820px){[data-zone=frontend] .progs{grid-template-columns:1fr}[data-zone=frontend] .section{padding:72px 0}[data-zone=frontend] .section-head{margin-bottom:40px}[data-zone=frontend] .cta{padding:80px 0 64px}[data-zone=frontend] .nav-links,[data-zone=frontend] .nav-desktop-actions{display:none}[data-zone=frontend] .nav-burger{display:grid}[data-zone=frontend] .foot-top{grid-template-columns:1fr;gap:40px}[data-zone=frontend] .foot-brand{max-width:none}}@media (max-width:640px){[data-zone=frontend] .wrap{padding:0 20px}[data-zone=frontend] .hero{padding:56px 0 64px}[data-zone=frontend] .courses-grid{grid-template-columns:repeat(2,1fr)}[data-zone=frontend] .testi-grid,[data-zone=frontend] .stats-grid{grid-template-columns:1fr}[data-zone=frontend] .prog-body{padding:24px 22px}[data-zone=frontend] .instr-content{padding:32px 24px}[data-zone=frontend] .instr-photo{padding:24px 24px 0}[data-zone=frontend] .peek-body{padding:20px;font-size:12px}[data-zone=frontend] .stat .v{font-size:48px}[data-zone=frontend] .foot-cols{grid-template-columns:1fr 1fr;gap:28px 24px}}@media (prefers-reduced-motion:reduce){[data-zone=frontend] .mesh:before{animation:none}[data-zone=frontend] .prog:hover .prog-hero img{transform:none}}[data-zone=frontend] .program-page{background:var(--bg);flex:1 0 auto;position:relative;overflow-x:clip}[data-zone=frontend] .program-main{z-index:1;position:relative}[data-zone=frontend] .program-main .section h2{letter-spacing:-.025em;max-width:800px;font-size:clamp(34px,4vw,52px);line-height:1.08}[data-zone=frontend] .section--tight-top{padding-top:56px}[data-zone=frontend] .program-main .section--tight-top h2{max-width:none}[data-zone=frontend] .pg-eyebrow{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.14em;color:var(--moss-d);background:#f7f6f0a6;border:1px solid #fff9;border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 10px;font-size:11px;display:inline-flex;box-shadow:inset 0 1px #ffffffd9,0 4px 14px -4px #0b130e1a}[data-zone=frontend] .pg-eyebrow i{background:var(--moss);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ee87038}[data-zone=frontend] .hero--program .pg-product{color:var(--ink);letter-spacing:-.012em;margin:22px auto 0;font-size:26px;font-weight:500;line-height:1.2}[data-zone=frontend] .hero--program h1{letter-spacing:-.04em;text-wrap:balance;max-width:1180px;margin:14px auto 0;font-size:clamp(44px,5.2vw,70px);line-height:1.06}[data-zone=frontend] .hero--program .sub{max-width:540px}[data-zone=frontend] .hero-micro{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);margin-top:22px;font-size:11.5px}[data-zone=frontend] .incl-grid{flex-wrap:wrap;justify-content:center;gap:12px;max-width:980px;margin:0 auto;display:flex}[data-zone=frontend] .incl-grid+.incl-grid{margin-top:12px}[data-zone=frontend] .incl{border-radius:18px;flex-direction:column;flex:0 calc(25% - 9px);justify-content:space-between;gap:16px;min-height:138px;padding:22px;display:flex;position:relative;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -10px #0b130e26}[data-zone=frontend] .incl-icon{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));width:34px;height:34px;color:var(--paper);border-radius:10px;place-items:center;display:grid;box-shadow:inset 0 1px #fff6,0 6px 14px -6px #1f4a2866}[data-zone=frontend] .incl-val{letter-spacing:-.025em;color:var(--ink);font-feature-settings:"tnum";font-size:26px;font-weight:500;line-height:1.1}[data-zone=frontend] .incl-label{margin-top:6px}[data-zone=frontend] .course-stack{flex-direction:column;gap:16px;max-width:980px;margin:0 auto;display:flex}[data-zone=frontend] .course-card{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#f7f6f0a8;border:1px solid #ffffff9e;border-radius:22px;grid-template-columns:1fr 360px;gap:30px;padding:28px 30px;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:grid;position:relative;box-shadow:inset 0 1px #ffffffd9,0 12px 30px -14px #0b130e33,0 32px 64px -24px #0b130e38}[data-zone=frontend] .course-card:hover{transform:scale(1.006);box-shadow:inset 0 1px #ffffffe6,0 16px 34px -14px #0b130e38,0 42px 78px -26px #0b130e42}[data-zone=frontend] .cc-left{flex-direction:column;display:flex}[data-zone=frontend] .cc-eyebrow{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.12em;color:var(--moss-d);background:#f7f6f0b3;border:1px solid #fff9;border-radius:999px;align-self:flex-start;align-items:center;gap:10px;margin-bottom:14px;padding:5px 14px 5px 5px;display:inline-flex;box-shadow:inset 0 1px #ffffffd9,0 4px 12px -4px #0b130e1a}[data-zone=frontend] .cc-logo{width:28px;height:28px;color:var(--ink-3);letter-spacing:.06em;background:#f7f6f0e6;border:1.5px dashed #0b130e38;border-radius:7px;flex-shrink:0;place-items:center;font-size:8.5px;font-weight:500;line-height:1;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffffd9}[data-zone=frontend] .cc-logo--filled{background:0 0;border:1px solid #0b130e1a}[data-zone=frontend] .cc-index{color:var(--ink-2)}[data-zone=frontend] .cc-name{letter-spacing:-.028em;color:var(--ink);margin:0;font-size:30px;font-weight:500;line-height:1.08}[data-zone=frontend] .cc-stats{font-family:var(--mono);color:var(--ink-3);letter-spacing:.03em;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:12px;display:flex}[data-zone=frontend] .cc-stats span{align-items:center;gap:6px;display:inline-flex}[data-zone=frontend] .cc-stats svg{color:var(--moss-d)}[data-zone=frontend] .cc-desc{color:var(--ink-2);max-width:520px;margin-top:16px;font-size:14.5px;line-height:1.6}[data-zone=frontend] .cc-cta{flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:22px;display:flex}[data-zone=frontend] .cc-cta .btn{padding:11px 18px;font-size:13px}[data-zone=frontend] .curr{border:1px solid var(--line);background:#f7f6f08c;border-radius:14px;flex-direction:column;padding:18px;display:flex;box-shadow:inset 0 1px #ffffffb3}[data-zone=frontend] .curr-label{letter-spacing:.14em;margin-bottom:10px;font-size:10px}[data-zone=frontend] .curr-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:9px 0;display:flex}[data-zone=frontend] .curr-row:last-of-type{border-bottom:none}[data-zone=frontend] .curr-row .ic{color:var(--ink-3);flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .curr-row.free .ic{color:var(--moss-d)}[data-zone=frontend] .curr-row .nm{color:var(--ink);flex:1;font-size:13px;line-height:1.35}[data-zone=frontend] .curr-row .mt{font-family:var(--mono);color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:inline-flex}[data-zone=frontend] .curr-tag,[data-zone=frontend] .drawer-tag{color:var(--moss-d);letter-spacing:.03em;background:#6ee8702e;border-radius:4px;padding:2px 7px;font-size:10px}[data-zone=frontend] .curr-all{font-family:var(--sans);color:var(--moss-d);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-top:10px;padding:8px 0 0;font-size:12.5px;font-weight:500;transition:color .15s;display:inline-flex}[data-zone=frontend] .curr-all:hover{color:var(--moss)}[data-zone=frontend] .steps{grid-template-columns:repeat(3,1fr);gap:18px;max-width:980px;margin:0 auto;display:grid;position:relative}[data-zone=frontend] .step{text-align:center;z-index:2;border-radius:18px;padding:28px 24px;position:relative;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -10px #0b130e26}[data-zone=frontend] .step-icon{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));width:42px;height:42px;color:var(--paper);border-radius:12px;place-items:center;margin:0 auto 14px;display:grid;box-shadow:inset 0 1px #fff6,0 6px 14px -6px #1f4a2873}[data-zone=frontend] .step-lbl{color:var(--ink);letter-spacing:-.005em;margin-bottom:6px;font-size:15px;font-weight:500}[data-zone=frontend] .step-txt{color:var(--ink-2);font-size:12.5px;line-height:1.5}[data-zone=frontend] .steps-connect{z-index:1;pointer-events:none;border-top:1.5px dotted #0b130e2e;position:absolute;top:49px;left:16%;right:16%}[data-zone=frontend] .pr-shot{border-radius:18px;max-width:760px;margin:44px auto 0;position:relative;overflow:hidden;box-shadow:0 10px 30px -14px #0b130e33,0 34px 64px -28px #0b130e3d}[data-zone=frontend] .pr-shot:not(.is-filled){aspect-ratio:16/9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink-3);font-family:var(--mono);letter-spacing:.05em;text-align:center;background:#f7f6f073;place-items:center;padding:24px;font-size:12.5px;display:grid}[data-zone=frontend] .pr-shot img{width:100%;height:auto;display:block}[data-zone=frontend] .pr-shot.is-filled{isolation:isolate}[data-zone=frontend] .pr-shot.is-filled:after{content:"";mix-blend-mode:multiply;opacity:.35;pointer-events:none;background:#e8e1d1;position:absolute;inset:0}[data-zone=frontend] .pr-caption{text-align:center;letter-spacing:.06em;margin-top:12px;font-size:11px}[data-zone=frontend] .closing-line{text-align:center;max-width:580px;color:var(--ink);margin:44px auto 0;font-size:18px;font-style:normal;line-height:1.55}[data-zone=frontend] .ai-grid{flex-wrap:wrap;justify-content:center;gap:12px;max-width:980px;margin:0 auto;display:flex}[data-zone=frontend] .ai-card{border-radius:16px;flex:0 calc(25% - 9px);padding:22px;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -8px #0b130e1f}[data-zone=frontend] .ai-icon{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));width:32px;height:32px;color:var(--paper);border-radius:9px;place-items:center;margin-bottom:14px;display:grid;box-shadow:inset 0 1px #fff6,0 4px 10px -4px #1f4a2859}[data-zone=frontend] .ai-title{color:var(--ink);letter-spacing:-.005em;margin-bottom:6px;font-size:14.5px;font-weight:500}[data-zone=frontend] .ai-text{color:var(--ink-2);font-size:12.5px;line-height:1.5}[data-zone=frontend] .price-card{-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);border:2px solid var(--moss-d);isolation:isolate;background:#f7f6f0c7;border-radius:24px;max-width:520px;margin:0 auto;padding:36px 38px 30px;position:relative;box-shadow:inset 0 1px #ffffffe6,0 20px 50px -16px #1f4a284d,0 44px 90px -22px #0b130e38}[data-zone=frontend] .price-card:before{content:"";border-radius:inherit;pointer-events:none;z-index:-1;background:radial-gradient(80% 60% at 50% -10%,#6ee87038,#0000 70%);position:absolute;inset:0}[data-zone=frontend] .price-top{text-align:center;margin-bottom:26px}[data-zone=frontend] .price-val{letter-spacing:-.04em;color:var(--ink);font-feature-settings:"tnum";align-items:flex-start;gap:6px;font-size:68px;font-weight:500;line-height:1;display:inline-flex}[data-zone=frontend] .price-val sup{line-height:1;font-family:var(--mono);color:var(--ink-3);letter-spacing:.08em;margin-top:14px;font-size:12px;font-weight:400;position:static}[data-zone=frontend] .price-meta{margin-top:12px;font-size:11px}[data-zone=frontend] .price-list{flex-direction:column;gap:10px;margin:0 0 24px;padding:0;list-style:none;display:flex}[data-zone=frontend] .price-list li{color:var(--ink);align-items:flex-start;gap:12px;font-size:14.5px;line-height:1.45;display:flex}[data-zone=frontend] .price-list li svg{color:var(--moss-d);flex-shrink:0;margin-top:1px}[data-zone=frontend] .price-cta{justify-content:center;width:100%;padding:15px 22px;font-size:15px;display:flex}[data-zone=frontend] .price-trigger{text-align:center;margin-top:14px}[data-zone=frontend] .team-block{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:center;max-width:520px;color:var(--ink-2);background:#f7f6f08c;border:1px solid #ffffff8c;border-radius:14px;margin:20px auto 0;padding:16px 22px;font-size:14px;line-height:1.55;box-shadow:inset 0 1px #ffffffb3}[data-zone=frontend] .team-block a{color:var(--moss-d);font-weight:500}[data-zone=frontend] .instr-short{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#f7f6f0a8;border:1px solid #ffffff9e;border-radius:24px;grid-template-columns:280px 1fr;align-items:start;gap:40px;max-width:980px;margin:0 auto;padding:36px;display:grid;box-shadow:inset 0 1px #ffffffd9,0 14px 36px -12px #0b130e33,0 40px 80px -24px #0b130e40}[data-zone=frontend] .instr-short-photo{aspect-ratio:4/5;background:#0c1410;border:1px solid #ffffff8c;border-radius:16px;width:280px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 14px 36px -10px #0b130e4d,0 30px 60px -18px #0b130e47}[data-zone=frontend] .instr-short-photo img{object-fit:cover}[data-zone=frontend] .instr-short-content{flex-direction:column;padding:4px 0;display:flex}[data-zone=frontend] .instr-short-name{letter-spacing:-.025em;font-size:32px;font-weight:500;line-height:1.1}[data-zone=frontend] .instr-short-cred{letter-spacing:.06em;margin-top:10px;font-size:11.5px}[data-zone=frontend] .instr-short-bio{color:var(--ink);flex-direction:column;gap:14px;margin-top:24px;font-size:15.5px;line-height:1.6;display:flex}[data-zone=frontend] .instr-short-bio p{margin:0}[data-zone=frontend] .instr-short-bio em{color:var(--moss-d);font-style:normal;font-weight:500}[data-zone=frontend] .faq-contact{-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);max-width:760px;color:var(--ink-2);text-align:center;background:#f7f6f099;border-radius:999px;justify-content:center;align-items:center;gap:10px;margin:28px auto 0;padding:16px 22px;font-size:14.5px;display:flex;box-shadow:inset 0 1px #fffc,0 6px 18px -8px #0b130e24}[data-zone=frontend] .faq-contact svg{color:var(--moss-d);flex-shrink:0}[data-zone=frontend] .faq-contact a{color:var(--moss-d);text-underline-offset:3px;font-weight:500;-webkit-text-decoration:underline #2f6a3a59;text-decoration:underline #2f6a3a59}[data-zone=frontend] .faq-contact a:hover{-webkit-text-decoration-color:var(--moss-d);text-decoration-color:var(--moss-d)}[data-zone=frontend] .drawer-mask{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;z-index:90;background:#0b130e6b;transition:opacity .25s;position:fixed;inset:0}[data-zone=frontend] .drawer-mask.open{opacity:1;pointer-events:auto}[data-zone=frontend] .drawer{-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);z-index:100;background:#edede5f5;border-left:1px solid #0b130e14;flex-direction:column;width:480px;max-width:100vw;height:100vh;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-24px 0 60px -20px #0b130e4d}[data-zone=frontend] .drawer.open{transform:translate(0)}[data-zone=frontend] .drawer-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:24px 26px 20px;display:flex}[data-zone=frontend] .drawer-name{color:var(--ink);letter-spacing:-.02em;font-size:22px;font-weight:500;line-height:1.18}[data-zone=frontend] .drawer-stats{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-top:10px;font-size:11.5px}[data-zone=frontend] .drawer-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink-2);cursor:pointer;background:#f7f6f0b3;border-radius:999px;flex-shrink:0;place-items:center;transition:background .15s,color .15s;display:grid}[data-zone=frontend] .drawer-close:hover{background:var(--paper);color:var(--ink)}[data-zone=frontend] .drawer-body{flex:1;padding:20px 26px 30px;overflow-y:auto}[data-zone=frontend] .drawer-section-label{letter-spacing:.14em;margin-bottom:8px}[data-zone=frontend] .drawer-module{margin-top:32px}[data-zone=frontend] .drawer-module:first-child{margin-top:0}[data-zone=frontend] .drawer-section-desc{font-family:var(--sans);color:var(--ink-2);margin-bottom:12px;font-size:12.5px;line-height:1.55}[data-zone=frontend] .drawer-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}[data-zone=frontend] .drawer-row:last-child{border-bottom:none}[data-zone=frontend] .drawer-row .ic{color:var(--ink-3);flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .drawer-row.free .ic,[data-zone=frontend] a.drawer-row.free:hover .nm{color:var(--moss-d)}[data-zone=frontend] .drawer-row .nm{color:var(--ink);flex:1;font-size:13.5px}[data-zone=frontend] .drawer-row .mt{font-family:var(--mono);color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:inline-flex}[data-zone=frontend] .drawer-foot{border-top:1px solid var(--line);gap:10px;padding:18px 26px;display:flex}[data-zone=frontend] .drawer-foot .btn{flex:1;justify-content:center;padding:12px 16px;font-size:13.5px}@media (max-width:1024px){[data-zone=frontend] .incl,[data-zone=frontend] .ai-card{flex-basis:calc(50% - 6px)}[data-zone=frontend] .course-card{grid-template-columns:1fr}}@media (max-width:820px){[data-zone=frontend] .steps{grid-template-columns:1fr}[data-zone=frontend] .steps-connect{display:none}[data-zone=frontend] .instr-short{grid-template-columns:1fr;gap:28px}[data-zone=frontend] .instr-short-photo{width:100%;max-width:280px}}@media (max-width:640px){[data-zone=frontend] .incl,[data-zone=frontend] .ai-card{flex-basis:100%}[data-zone=frontend] .course-card{padding:24px 22px}[data-zone=frontend] .price-card{padding:28px 24px}}[data-zone=frontend] .auth-card{background:var(--paper);border:1px solid var(--line-2);border-radius:1rem;box-shadow:inset 0 1px #fffc,0 14px 36px -12px #0b130e33}[data-zone=frontend] .auth-card [data-slot=card-header]{padding-bottom:.75rem}[data-zone=frontend] .auth-card [data-slot=card-content]{padding-top:0}[data-zone=frontend] .auth-card [data-slot=field-group]{gap:1rem}[data-zone=frontend] .auth-card [data-slot=card-header],[data-zone=frontend] .auth-card [data-slot=card-title]{color:var(--ink)}[data-zone=frontend] .auth-card [data-slot=card-description]{color:var(--ink-2)}[data-zone=frontend] .auth-card input{background:var(--paper);border-color:var(--line-2);color:var(--ink)}[data-zone=frontend] .auth-card input::placeholder{color:var(--ink-3)}[data-zone=frontend] .auth-card input:focus{border-color:var(--moss);outline:none;box-shadow:0 0 0 2px #2f6a3a33}[data-zone=frontend] .auth-card label,[data-zone=frontend] .auth-card [data-slot=field-label],[data-zone=frontend] .auth-card [data-slot=field-description],[data-zone=frontend] .auth-card p:not([data-slot]){color:var(--ink-2)}[data-zone=frontend] .auth-card a{color:var(--moss-d);text-underline-offset:2px;text-decoration:underline}[data-zone=frontend] .auth-card button[type=submit],[data-zone=frontend] .auth-card [data-variant=default]{background:var(--moss-d);color:var(--paper);font-weight:600}[data-zone=frontend] .auth-card button[type=submit]:hover,[data-zone=frontend] .auth-card [data-variant=default]:hover{background:var(--moss)}[data-zone=frontend] .auth-card [data-variant=outline]{background:var(--paper);border-color:var(--line-2);color:var(--ink-2)}[data-zone=frontend] .auth-card .text-destructive,[data-zone=frontend] .auth-card .text-red-600{color:#c62f2f}[data-zone=frontend] .hero--listing{perspective:none;padding:56px 0 32px}[data-zone=frontend] .hero--listing .hero-inner{text-align:left;max-width:760px}[data-zone=frontend] .hero--listing h1{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(30px,2.8vw,40px);line-height:1.1}[data-zone=frontend] .hero--listing .sub{max-width:620px;margin:14px 0 0;font-size:15px;line-height:1.6}[data-zone=frontend] .progs-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}[data-zone=frontend] .progc{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);color:inherit;background:#f7f6f0ad;border:1px solid #ffffff9e;border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,0 12px 30px -14px #0b130e33,0 36px 70px -24px #0b130e47}[data-zone=frontend] .progc:hover{transform:scale(1.01);box-shadow:inset 0 1px #ffffffe6,0 16px 34px -14px #0b130e3d,0 44px 82px -26px #0b130e52}[data-zone=frontend] .progc-hero{aspect-ratio:16/11;background:#0c1410;border-bottom:1px solid #0b130e0f;position:relative;overflow:hidden}[data-zone=frontend] .progc:hover .progc-hero img{transform:scale(1.04)}[data-zone=frontend] .progc-hero-tag{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.1em;color:#ffffffeb;background:#0f1c158c;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:6px;padding:4px 9px 4px 7px;font-size:9.5px;display:inline-flex;position:absolute;top:12px;left:12px}[data-zone=frontend] .progc-hero-tag i{background:var(--moss-l);width:4px;height:4px;box-shadow:0 0 6px var(--moss-l);border-radius:50%}[data-zone=frontend] .progc-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000 65%,#0b130e38 100%),linear-gradient(#ffffff0f,#0000 25%);position:absolute;inset:0}[data-zone=frontend] .progc-body{flex-direction:column;flex:1;gap:16px;padding:22px 20px;display:flex}[data-zone=frontend] .progc-name{letter-spacing:-.02em;color:var(--ink);min-height:50px;font-size:22px;font-weight:500;line-height:1.15}[data-zone=frontend] .progc-tag{color:var(--ink-2);flex:1;font-size:13.5px;line-height:1.5}[data-zone=frontend] .progc-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}[data-zone=frontend] .progc-stat{background:#f7f6f08c;border:1px solid #0b130e0f;border-radius:12px;padding:12px;box-shadow:inset 0 1px #ffffffb3}[data-zone=frontend] .progc-stat .v{letter-spacing:-.02em;color:var(--ink);font-feature-settings:"tnum";font-size:20px;font-weight:500;line-height:1}[data-zone=frontend] .progc-stat .l{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:8px;font-size:9.5px}[data-zone=frontend] .progc-foot{justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}[data-zone=frontend] .progc-price{letter-spacing:-.02em;color:var(--ink);font-feature-settings:"tnum";font-size:26px;font-weight:500;line-height:1}[data-zone=frontend] .progc-price .from{font-family:var(--mono);color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:9.5px;display:block}[data-zone=frontend] .progc-link{background:linear-gradient(180deg, #2a6f3a, var(--moss-d));color:var(--paper);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:10px 16px;font-size:12.5px;font-weight:500;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #fff3,inset 0 -2px 4px #0000002e,0 4px 12px -2px #1f4a2866}[data-zone=frontend] .progc:hover .progc-link{transform:translateY(-1px)}[data-zone=frontend] .feature-testi{text-align:center;max-width:920px;margin:0 auto;padding:64px 40px 48px;position:relative}[data-zone=frontend] .feature-testi:before{content:"“";font-family:var(--serif);color:var(--moss);opacity:.16;pointer-events:none;font-size:240px;font-style:italic;line-height:1;position:absolute;top:-10px;left:50%;transform:translate(-50%)}[data-zone=frontend] .feature-testi-quote{color:var(--ink);letter-spacing:-.012em;text-wrap:pretty;max-width:820px;margin:28px auto 0;font-size:clamp(22px,2.3vw,30px);font-weight:400;line-height:1.45;position:relative}[data-zone=frontend] .feature-testi-quote mark{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#b5d58e8c;border-radius:4px;padding:.05em .25em}[data-zone=frontend] .feature-testi-foot{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f6f0b3;border:1px solid #ffffff9e;border-radius:999px;align-items:center;gap:14px;margin-top:36px;padding:10px 22px 10px 12px;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -8px #0b130e26}[data-zone=frontend] .feature-testi-av{border-radius:50%;flex:0 0 40px;width:40px;height:40px;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 4px 10px #1f4a284d}[data-zone=frontend] .feature-testi-av img,[data-zone=frontend] .dl-row-thumb img{object-fit:cover;width:100%;height:100%;display:block}[data-zone=frontend] .feature-testi-id{text-align:left}[data-zone=frontend] .feature-testi-name{color:var(--ink);align-items:center;gap:6px;font-size:15px;font-weight:500;line-height:1.2;display:flex}[data-zone=frontend] .feature-testi-title{color:var(--ink-3);font-size:11.5px;font-family:var(--mono);letter-spacing:.02em;margin-top:3px}@media (max-width:1024px){[data-zone=frontend] .progs-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){[data-zone=frontend] .progs-4{grid-template-columns:1fr}[data-zone=frontend] .feature-testi{padding:56px 4px 32px}}[data-zone=frontend] .wrap--narrow{max-width:920px;margin:0 auto;padding:0 32px}[data-zone=frontend] .cd-eyebrow{letter-spacing:.14em;color:var(--moss-d);font-size:11px;display:inline-block}[data-zone=frontend] .cd-hero{padding:96px 0 56px}[data-zone=frontend] .cd-hero-grid{grid-template-columns:1fr 380px;align-items:start;gap:48px;display:grid}[data-zone=frontend] .cd-hero h1{letter-spacing:-.035em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(40px,4.4vw,64px);font-weight:500;line-height:1.04}[data-zone=frontend] .cd-hero .cd-tagline{color:var(--ink-2);max-width:540px;margin-top:22px;font-size:18px;line-height:1.55}[data-zone=frontend] .cd-hero-learn{border-top:1px solid var(--line-2);max-width:560px;margin-top:32px;padding-top:24px}[data-zone=frontend] .cd-hero-learn-label{letter-spacing:.14em;color:var(--moss-d);margin-bottom:14px;font-size:11px}[data-zone=frontend] .cd-hero-learn-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}[data-zone=frontend] .cd-hero-learn-list li{color:var(--ink);grid-template-columns:24px 1fr;align-items:start;gap:12px;font-size:15px;line-height:1.45;display:grid}[data-zone=frontend] .cd-hero-learn-list .cd-check{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));width:22px;height:22px;color:var(--paper);border-radius:7px;place-items:center;margin-top:1px;display:grid;box-shadow:inset 0 1px #ffffff73,0 3px 8px -3px #1f4a2859}[data-zone=frontend] .cd-hero-learn-list .cd-check svg{width:13px;height:13px}[data-zone=frontend] .cd-price-card{-webkit-backdrop-filter:blur(24px)saturate(160%);border-radius:22px;padding:26px 26px 22px;box-shadow:inset 0 1px #ffffffb3,0 14px 36px -14px #0b130e2e,0 32px 70px -22px #0b130e29}[data-zone=frontend] .cd-price-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}[data-zone=frontend] .cd-course-logo{width:88px;height:88px;color:var(--ink-3);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;text-align:center;background:#f7f6f099;border:1.5px dashed #0b130e2e;border-radius:18px;flex-shrink:0;place-items:center;font-size:9.5px;line-height:1.3;display:grid;overflow:hidden;box-shadow:inset 0 1px #fffc}[data-zone=frontend] .cd-course-logo--filled{background:var(--paper);border-style:solid;border-color:#0b130e14}[data-zone=frontend] .cd-price-tag{flex-direction:column;align-items:flex-end;line-height:1;display:flex}[data-zone=frontend] .cd-price-tag .cd-price-val{letter-spacing:-.03em;color:var(--ink);font-feature-settings:"tnum";font-size:44px;font-weight:500}[data-zone=frontend] .cd-price-tag .cd-price-qual{text-align:right;margin-top:8px;font-size:10px;line-height:1.4}[data-zone=frontend] .cd-price-stats{font-family:var(--mono);color:var(--ink-2);letter-spacing:.02em;font-feature-settings:"tnum";white-space:nowrap;background:#1f4a280d;border:1px solid #0b130e0f;border-radius:12px;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;margin:18px 0 4px;padding:12px 14px;font-size:10.5px;display:flex}[data-zone=frontend] .cd-price-stats span{align-items:center;gap:5px;display:inline-flex}[data-zone=frontend] .cd-price-stats svg{color:var(--moss-d);width:13px;height:13px}[data-zone=frontend] .cd-price-stats .cd-sep{color:var(--line-2)}[data-zone=frontend] .cd-price-list{flex-direction:column;gap:9px;margin:22px 0;padding:0;list-style:none;display:flex}[data-zone=frontend] .cd-price-list li{color:var(--ink);align-items:center;gap:11px;font-size:13.5px;display:flex}[data-zone=frontend] .cd-price-list li svg{color:var(--moss-d);flex-shrink:0;width:16px;height:16px}[data-zone=frontend] .cd-price-ctas{flex-direction:column;gap:8px;display:flex}[data-zone=frontend] .cd-price-ctas .btn{justify-content:center;width:100%;padding:14px 22px}[data-zone=frontend] .cd-price-micro{letter-spacing:.06em;text-align:center;margin-top:14px}[data-zone=frontend] .cd-enrolled-badge{color:var(--moss-d);font-size:13px;font-weight:500;font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;display:flex}[data-zone=frontend] .cd-enrolled-badge .cd-dot{background:linear-gradient(140deg, var(--moss-l), var(--moss-d));width:18px;height:18px;color:var(--paper);border-radius:50%;place-items:center;display:grid}[data-zone=frontend] .cd-enrolled-badge .cd-dot svg{width:11px;height:11px}[data-zone=frontend] .cd-page .section{padding:72px 0}[data-zone=frontend] .cd-section-head{max-width:760px;margin-bottom:36px}[data-zone=frontend] .cd-section-head .cd-eyebrow{margin-bottom:14px}[data-zone=frontend] .cd-page .section h2{letter-spacing:-.025em;color:var(--ink);max-width:760px;margin:0 auto;font-size:clamp(28px,3.2vw,40px);font-weight:500;line-height:1.08}[data-zone=frontend] .cd-page .section .sub{color:var(--ink-2);max-width:620px;margin:14px 0 0;font-size:15.5px;line-height:1.6}[data-zone=frontend] .cd-curr-band{background:#f7f6f08c;border:1px solid #fff9;border-radius:22px;padding:32px 36px;box-shadow:inset 0 1px #fffc,0 8px 28px -12px #0b130e1f}[data-zone=frontend] .cd-curr-module{margin-bottom:26px}[data-zone=frontend] .cd-curr-module:last-child{margin-bottom:0}[data-zone=frontend] .cd-curr-module-head{border-bottom:1px solid var(--line-2);align-items:baseline;gap:14px;margin-bottom:6px;padding-bottom:12px;display:flex}[data-zone=frontend] .cd-curr-module-num{font-family:var(--mono);color:var(--moss-d);letter-spacing:.14em;font-size:11px}[data-zone=frontend] .cd-curr-module-name{letter-spacing:-.015em;color:var(--ink);font-size:19px;font-weight:500}[data-zone=frontend] .cd-curr-module-meta{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-left:auto;font-size:11px}[data-zone=frontend] .cd-curr-row{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:40px 22px 1fr auto;align-items:center;gap:14px;padding:12px 0;text-decoration:none;display:grid}[data-zone=frontend] .cd-curr-row:last-child{border-bottom:none}[data-zone=frontend] .cd-curr-row .cd-num{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;font-feature-settings:"tnum";font-size:11px}[data-zone=frontend] .cd-curr-row .cd-ic{color:var(--ink-3);place-items:center;display:grid}[data-zone=frontend] .cd-curr-row .cd-ic svg{width:16px;height:16px}[data-zone=frontend] .cd-curr-row.is-free .cd-ic{color:var(--moss-d)}[data-zone=frontend] .cd-curr-row.is-free{cursor:pointer}[data-zone=frontend] .cd-curr-row.is-free:hover{background:#1f4a280a;border-radius:8px;margin-inline:-8px;padding-inline:8px}[data-zone=frontend] .cd-curr-row .cd-nm{color:var(--ink);letter-spacing:-.005em;font-size:14.5px}[data-zone=frontend] .cd-curr-row .cd-meta{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;font-feature-settings:"tnum";align-items:center;gap:9px;font-size:11px;display:inline-flex}[data-zone=frontend] .cd-curr-row .cd-tag{color:var(--moss-d);letter-spacing:.06em;text-transform:uppercase;background:#6ee87033;border-radius:4px;padding:2px 7px;font-size:10px}[data-zone=frontend] .cd-curr-row .cd-tag--practice{color:#8a5a18;background:#e0a04a2e}[data-zone=frontend] .cd-prog-card{-webkit-backdrop-filter:blur(22px)saturate(160%);isolation:isolate;color:inherit;background:radial-gradient(80% 60% at 0 0,#6ee8701a,#0000 60%),linear-gradient(#f7f6f09e,#f7f6f080);border:1px solid #2f6a3a38;border-radius:22px;padding:30px 32px 28px;text-decoration:none;display:block;position:relative;box-shadow:inset 0 1px #ffffffb3,0 10px 30px -12px #1f4a2826,0 28px 60px -22px #0b130e26}[data-zone=frontend] .cd-prog-card-head{grid-template-columns:64px 1fr;align-items:center;gap:18px;display:grid}[data-zone=frontend] .cd-prog-card-logo{background:radial-gradient(60% 50% at 30% 25%, #ffffff80, transparent 60%), linear-gradient(140deg, var(--moss-l), var(--moss-d));width:64px;height:64px;color:var(--paper);font-family:var(--mono);letter-spacing:.1em;text-align:center;text-transform:uppercase;border-radius:14px;place-items:center;font-size:10px;line-height:1.1;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 6px 14px -4px #1f4a2866}[data-zone=frontend] .cd-prog-card-name{letter-spacing:-.018em;color:var(--ink);font-size:22px;font-weight:500;line-height:1.2}[data-zone=frontend] .cd-prog-card-tag{letter-spacing:.06em;margin-top:4px;font-size:11px}[data-zone=frontend] .cd-prog-card-desc{color:var(--ink-2);max-width:640px;margin-top:18px;font-size:14.5px;line-height:1.6}[data-zone=frontend] .cd-prog-card-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}[data-zone=frontend] .cd-prog-card-stat{background:#f7f6f080;border:1px solid #0b130e0d;border-radius:12px;padding:14px 16px;box-shadow:inset 0 1px #ffffffb3}[data-zone=frontend] .cd-prog-card-stat .cd-stat-ic{width:26px;height:26px;color:var(--moss-d);background:#1f4a281a;border-radius:8px;place-items:center;margin-bottom:8px;display:grid}[data-zone=frontend] .cd-prog-card-stat .cd-stat-ic svg{width:15px;height:15px}[data-zone=frontend] .cd-prog-card-stat .cd-stat-v{letter-spacing:-.01em;color:var(--ink);font-feature-settings:"tnum";font-size:16px;font-weight:500;line-height:1.2}[data-zone=frontend] .cd-prog-card-stat .cd-stat-l{margin-top:4px;font-size:10px}[data-zone=frontend] .cd-prog-card-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:20px;display:flex}[data-zone=frontend] .cd-prog-card-price{flex-direction:column;line-height:1;display:flex}[data-zone=frontend] .cd-prog-card-price .cd-stat-v{letter-spacing:-.025em;color:var(--ink);font-feature-settings:"tnum";font-size:28px;font-weight:500}[data-zone=frontend] .cd-prog-card-price .cd-stat-l{margin-top:6px}[data-zone=frontend] .cd-prog-card-cta{background:linear-gradient(180deg, #2a6f3a, var(--moss-d));color:var(--paper);border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:11px 18px;font-size:13.5px;font-weight:500;transition:transform .15s;display:inline-flex;box-shadow:inset 0 1px #fff3,inset 0 -2px 4px #0000002e,0 4px 12px -2px #1f4a2866}[data-zone=frontend] .cd-prog-card:hover .cd-prog-card-cta{transform:translateY(-1px)}@media (max-width:900px){[data-zone=frontend] .cd-hero-grid{grid-template-columns:1fr;gap:32px}[data-zone=frontend] .cd-hero{padding:56px 0 32px}[data-zone=frontend] .cd-curr-band{padding:22px 18px}[data-zone=frontend] .cd-curr-row{grid-template-columns:32px 20px 1fr auto;gap:10px}[data-zone=frontend] .cd-page .section{padding:48px 0}[data-zone=frontend] .cd-prog-card{padding:22px 20px 20px}[data-zone=frontend] .cd-prog-card-stats{grid-template-columns:1fr}[data-zone=frontend] .cd-prog-card-foot{flex-direction:column;align-items:stretch;gap:14px}}[data-zone=frontend] .blog-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}[data-zone=frontend] .blogc{-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);color:inherit;background:#f7f6f0ad;border:1px solid #ffffff9e;border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,0 12px 30px -14px #0b130e33,0 36px 70px -24px #0b130e47}[data-zone=frontend] .blogc:hover{transform:scale(1.01);box-shadow:inset 0 1px #ffffffe6,0 16px 34px -14px #0b130e3d,0 44px 82px -26px #0b130e52}[data-zone=frontend] .blogc-cover{aspect-ratio:16/10;background:#0c1410;border-bottom:1px solid #0b130e0f;position:relative;overflow:hidden}[data-zone=frontend] .blogc:hover .blogc-cover img{transform:scale(1.04)}[data-zone=frontend] .blogc-cover:after{content:"";pointer-events:none;background:linear-gradient(#0000 65%,#0b130e38 100%),linear-gradient(#ffffff0f,#0000 25%);position:absolute;inset:0}[data-zone=frontend] .blogc-placeholder{background:radial-gradient(55% 60% at 30% 22%,#b5d58e52,#0000 60%),radial-gradient(60% 50% at 80% 88%,#2f6a3a6b,#0000 60%),linear-gradient(140deg,#0c1410,#1a2a1f);place-items:center;display:grid;position:absolute;inset:0}[data-zone=frontend] .blogc-placeholder span{font-family:var(--serif);color:#f7f6f029;letter-spacing:-.04em;font-size:96px;font-style:italic;line-height:1}[data-zone=frontend] .blogc-read{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.1em;color:#ffffffeb;background:#0f1c158c;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 8px;font-size:9.5px;display:inline-flex;position:absolute;top:12px;right:12px}[data-zone=frontend] .blogc-read svg{color:var(--moss-l)}[data-zone=frontend] .blogc-body{flex-direction:column;flex:1;gap:12px;padding:22px 22px 20px;display:flex}[data-zone=frontend] .blogc-date{letter-spacing:.12em;color:var(--moss-d)}[data-zone=frontend] .program-main .section .blogc-title{letter-spacing:-.012em;max-width:none;color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:18px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}[data-zone=frontend] .blogc-excerpt{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0;font-size:13.5px;line-height:1.55;display:-webkit-box;overflow:hidden}[data-zone=frontend] .blogc-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:6px;padding-top:16px;display:flex}[data-zone=frontend] .blogc-author{align-items:center;gap:8px;min-width:0;display:inline-flex}[data-zone=frontend] .blogc-av{background:linear-gradient(135deg, var(--moss-l), var(--moss-d));width:26px;height:26px;color:var(--paper);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:grid;overflow:hidden;box-shadow:inset 0 1px #fff6,0 2px 6px #1f4a2840}[data-zone=frontend] .blogc-author-name{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}[data-zone=frontend] .blogc-link{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);white-space:nowrap;background:#f7f6f0b3;border:1px solid #ffffffb3;border-radius:999px;align-items:center;gap:4px;padding:7px 13px;font-size:11.5px;font-weight:500;transition:transform .15s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 1px #fffc,0 3px 10px -4px #0b130e1f}[data-zone=frontend] .blogc:hover .blogc-link{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffe6,0 5px 14px -4px #0b130e2e}[data-zone=frontend] .blog-empty{text-align:center;-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);max-width:640px;color:var(--ink-2);background:#f7f6f08c;border-radius:20px;margin:0 auto;padding:48px 32px;font-size:14.5px;line-height:1.55;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -10px #0b130e26}@media (max-width:1024px){[data-zone=frontend] .blog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){[data-zone=frontend] .blog-grid{grid-template-columns:1fr}[data-zone=frontend] .program-main .section .blogc-title{font-size:17px}}[data-zone=frontend] .article-shell{padding-bottom:120px;position:relative}[data-zone=frontend] .article-shell .wrap{max-width:1280px}[data-zone=frontend] .article-back{font-family:var(--mono);letter-spacing:.03em;color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;margin:36px 0 28px -8px;padding:6px 12px 6px 8px;font-size:13.5px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}[data-zone=frontend] .article-back:hover{color:var(--ink);background:#0b130e0d}[data-zone=frontend] .article-lede{max-width:960px;padding:8px 0 28px}[data-zone=frontend] .article-lede h1{font-family:var(--sans);letter-spacing:-.035em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(40px,5.2vw,68px);font-weight:500;line-height:1.04}[data-zone=frontend] .article-byline{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:56px;padding:18px 0;display:flex}[data-zone=frontend] .article-byline-av{background:linear-gradient(140deg, var(--moss-l), var(--moss));width:38px;height:38px;color:var(--paper);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:600;display:grid;overflow:hidden;box-shadow:inset 0 1px #fff6,0 1px 4px #1f4a2840}[data-zone=frontend] .article-byline-name{color:var(--ink);font-size:14.5px;font-weight:500}[data-zone=frontend] .article-byline-sep{background:var(--line-2);width:1px;height:16px}[data-zone=frontend] .article-byline-meta{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);font-size:12px}[data-zone=frontend] .article-grid{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:80px;display:grid}[data-zone=frontend] .article-body{min-width:0;max-width:820px}[data-zone=frontend] .article-toc{background:#f7f6f099;border:1px solid #ffffff9e;border-radius:18px;align-self:start;padding:22px 22px 18px;position:sticky;top:100px;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -10px #0b130e1f}[data-zone=frontend] .article-toc-label{letter-spacing:.18em;margin:0 0 14px}[data-zone=frontend] .article-toc-list{flex-direction:column;gap:2px;display:flex}[data-zone=frontend] .article-toc-item{border-left:1.5px solid var(--line-2);color:var(--ink-2);padding:8px 0 8px 14px;font-size:13.5px;line-height:1.4;text-decoration:none;transition:color .15s,border-color .15s;display:block}[data-zone=frontend] .article-toc-item:hover{color:var(--ink);border-left-color:var(--ink-3)}[data-zone=frontend] .article-toc-item.is-active{border-left-color:var(--moss-d);color:var(--moss-d);font-weight:500}[data-zone=frontend] .article-author-bio{border-top:1px solid var(--line-2);max-width:820px;margin-top:24px;padding-top:40px}[data-zone=frontend] .article-body .prose{color:var(--ink)}[data-zone=frontend] .article-body .prose p{color:var(--ink);margin:0 0 1.2em;font-size:17.5px;line-height:1.72}[data-zone=frontend] .article-body .prose p strong{color:var(--ink);font-weight:600}[data-zone=frontend] .article-body .prose a{color:var(--moss-d);border-bottom:1px solid #1f4a284d;text-decoration:none;transition:border-color .15s}[data-zone=frontend] .article-body .prose a:hover{border-bottom-color:var(--moss-d)}[data-zone=frontend] .article-body .prose h2{letter-spacing:-.02em;color:var(--moss-d);margin:1.6em 0 .6em;font-size:30px;font-weight:600;line-height:1.2}[data-zone=frontend] .article-body .prose h3{letter-spacing:-.015em;color:var(--ink);margin:1.4em 0 .5em;font-size:22px;font-weight:600;line-height:1.3}[data-zone=frontend] .article-body .prose h4{color:var(--ink);margin:1.2em 0 .4em;font-size:18px;font-weight:600}[data-zone=frontend] .article-body .prose p code,[data-zone=frontend] .article-body .prose li code{font-family:var(--mono);color:var(--ink);background:#0b130e0d;border:1px solid #0b130e14;border-radius:5px;padding:1px 7px;font-size:.88em;font-weight:400}[data-zone=frontend] .article-body .prose ul,[data-zone=frontend] .article-body .prose ol{color:var(--ink);font-size:17.5px!important;line-height:1.72!important}[data-zone=frontend] .article-body .prose li{color:var(--ink);font-size:17.5px!important}[data-zone=frontend] .article-body .prose ul li::marker{color:var(--ink-3)}[data-zone=frontend] .article-body .prose ol li::marker{color:var(--ink-3)}[data-zone=frontend] .article-body .prose blockquote{background:#f7f6f08c;border:1px solid #0b130e14;border-radius:12px;box-shadow:inset 0 1px #ffffffb3,0 6px 18px -8px #0b130e1a}[data-zone=frontend] .article-body .prose blockquote:before{background:var(--moss-d)}[data-zone=frontend] .article-body .prose blockquote p{color:var(--ink)}[data-zone=frontend] .article-body .prose [data-type=faq-question]{text-align:left}[data-zone=frontend] .article-body .prose [data-type=faq-question]:before{display:none}[data-zone=frontend] .article-body .prose [data-type=faq-question]:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231F4A28' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;flex-shrink:0;width:20px;height:20px;margin-left:auto;transition:transform .2s}[data-zone=frontend] .article-body .prose [data-type=faq-item][open] [data-type=faq-question]:after{transform:rotate(180deg)}[data-zone=frontend] .article-body .prose [data-type=faq-answer]{padding-left:1.5rem}[data-zone=frontend] .article-body .prose [data-type=callout]{background:#f7f6f08c;box-shadow:inset 0 1px #ffffffb3,0 6px 18px -8px #0b130e1a}[data-zone=frontend] .article-body .prose table{border-color:var(--line);box-shadow:inset 0 1px #ffffffb3,0 6px 18px -8px #0b130e1a}[data-zone=frontend] .article-body .prose thead,[data-zone=frontend] .article-body .prose th{color:var(--ink);border-color:var(--line);background:#0b130e0a}[data-zone=frontend] .article-body .prose td{border-color:var(--line);color:var(--ink);background:#f7f6f073}[data-zone=frontend] .article-body .prose tbody tr:hover td{background:#f7f6f0b3}[data-zone=frontend] .article-body .prose .faq-header{color:var(--moss-d);border-bottom-color:var(--line-2)}[data-zone=frontend] .article-body .prose .faq-items{box-shadow:inset 0 1px #ffffffb3,0 6px 18px -8px #0b130e1a}[data-zone=frontend] .article-body .prose [data-type=faq-item]{background:#f7f6f08c}[data-zone=frontend] .article-body .prose [data-type=faq-item]+[data-type=faq-item]{border-top-color:var(--line)}[data-zone=frontend] .article-body .prose [data-type=faq-question]{color:var(--ink);background:0 0}[data-zone=frontend] .article-body .prose [data-type=faq-question]:hover{background:#0b130e0a}[data-zone=frontend] .article-body .prose [data-type=faq-answer]{border-top-color:var(--line);color:var(--ink-2);background:0 0}@media (max-width:1024px){[data-zone=frontend] .article-grid{grid-template-columns:1fr;gap:36px}[data-zone=frontend] .article-toc{display:none}[data-zone=frontend] .article-body{max-width:none}}@media (max-width:640px){[data-zone=frontend] .article-back{margin:24px 0 18px -8px}[data-zone=frontend] .article-lede{padding:4px 0 20px}[data-zone=frontend] .article-byline{gap:14px;margin-bottom:36px}[data-zone=frontend] .article-shell{padding-bottom:72px}[data-zone=frontend] .article-body .prose p,[data-zone=frontend] .article-body .prose ul,[data-zone=frontend] .article-body .prose ol,[data-zone=frontend] .article-body .prose li{font-size:16px!important;line-height:1.7!important}[data-zone=frontend] .article-body .prose h2{font-size:24px}[data-zone=frontend] .article-body .prose h3{font-size:19px}}[data-zone=frontend] .dl-shell{padding:56px 0 80px}[data-zone=frontend] .dl-section-head{align-items:center;gap:14px;margin-bottom:22px;display:flex}[data-zone=frontend] .dl-section-icon{background:linear-gradient(140deg, var(--ink), #1f2a22);width:38px;height:38px;color:var(--moss-l);border-radius:11px;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff1f,0 4px 12px -2px #0b130e4d}[data-zone=frontend] .dl-section-icon svg{width:18px;height:18px}[data-zone=frontend] .dl-section-title{letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:500;line-height:1.1}[data-zone=frontend] .dl-section-kicker{letter-spacing:.06em;margin-top:3px}[data-zone=frontend] .dl-program{-webkit-backdrop-filter:blur(18px)saturate(160%);background:#f7f6f0b8;border:1px solid #ffffff9e;border-radius:22px;grid-template-columns:300px 1fr;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,0 22px 50px -16px #0b130e29}[data-zone=frontend] .dl-program+.dl-program{margin-top:24px}[data-zone=frontend] .dl-program-side{background:linear-gradient(#1f4a280f,#1f4a2805);border-right:1px solid #0b130e14;flex-direction:column;gap:22px;padding:28px;display:flex}[data-zone=frontend] .dl-program-title{letter-spacing:-.02em;text-wrap:balance;color:var(--ink);margin-top:12px;font-size:24px;font-weight:500;line-height:1.15;text-decoration:none;display:inline-block}[data-zone=frontend] .dl-program-title:hover{color:var(--moss-d)}[data-zone=frontend] .dl-level{color:var(--moss-d);letter-spacing:.04em;background:#b5d58e66;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-weight:500;display:inline-flex}[data-zone=frontend] .dl-level--advanced{color:#9a6a20;background:#e0a04a2e}[data-zone=frontend] .dl-level--pro{color:#a33a2d;background:#e07a6e2e}[data-zone=frontend] .dl-ring-wrap{justify-content:center;padding:12px 0;display:flex}[data-zone=frontend] .dl-ring{width:130px;height:130px;position:relative}[data-zone=frontend] .dl-ring svg{transform:rotate(-90deg)}[data-zone=frontend] .dl-ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-zone=frontend] .dl-ring-pct{letter-spacing:-.02em;color:var(--ink);font-size:28px;font-weight:500;line-height:1}[data-zone=frontend] .dl-ring-pct sup{color:var(--ink-3);vertical-align:baseline;margin-left:1px;font-size:14px;font-weight:500;top:0}[data-zone=frontend] .dl-ring-meta{font-family:var(--mono);color:var(--ink-3);letter-spacing:.08em;margin-top:4px;font-size:10px}[data-zone=frontend] .dl-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}[data-zone=frontend] .dl-stat{background:#fff9;border:1px solid #0b130e0f;border-radius:12px;padding:12px 14px}[data-zone=frontend] .dl-stat-num{letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:500}[data-zone=frontend] .dl-stat-num span{color:var(--ink-3);font-size:14px}[data-zone=frontend] .dl-stat-label{margin-top:2px;font-size:9.5px}[data-zone=frontend] .dl-side-ctas{flex-direction:column;gap:8px;margin-top:auto;display:flex}[data-zone=frontend] .dl-btn{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:100%;padding:11px 16px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:transform .15s,box-shadow .2s;display:inline-flex}[data-zone=frontend] .dl-btn svg{width:14px;height:14px}[data-zone=frontend] .dl-btn--primary{background:linear-gradient(180deg, var(--moss), var(--moss-d));color:var(--paper);box-shadow:inset 0 1px #fff3,0 4px 12px -2px #1f4a2873}[data-zone=frontend] .dl-btn--primary:hover{transform:translateY(-1px)}[data-zone=frontend] .dl-btn--ghost{-webkit-backdrop-filter:blur(12px);color:var(--ink);background:#f7f6f0d9;border:1px solid #0b130e1f;box-shadow:inset 0 1px #fffc,0 3px 10px -4px #0b130e1f}[data-zone=frontend] .dl-btn--ghost:hover{transform:translateY(-1px)}[data-zone=frontend] .dl-btn--sm{width:auto;padding:8px 14px;font-size:12px}[data-zone=frontend] .dl-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}[data-zone=frontend] .dl-program-body{padding:28px}[data-zone=frontend] .dl-program-body-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}[data-zone=frontend] .dl-program-body-eyebrow{letter-spacing:.12em;font-size:11px}[data-zone=frontend] .dl-locked-count{color:var(--ink-3);align-items:center;gap:4px;font-size:12px;display:inline-flex}[data-zone=frontend] .dl-locked-count svg{width:12px;height:12px}[data-zone=frontend] .dl-rows{grid-template-columns:1fr 1fr;gap:14px;display:grid}[data-zone=frontend] .dl-rows--wide{grid-template-columns:repeat(3,1fr)}[data-zone=frontend] .dl-row{color:inherit;background:#ffffffb3;border:1px solid #0b130e0f;border-radius:14px;align-items:stretch;gap:14px;padding:12px;text-decoration:none;transition:transform .18s,box-shadow .2s;display:flex;position:relative;box-shadow:0 2px 8px -4px #0b130e14}[data-zone=frontend] .dl-row:hover{transform:translateY(-2px);box-shadow:0 8px 20px -6px #0b130e29}[data-zone=frontend] .dl-row--locked{box-shadow:none;background:#f7f6f066}[data-zone=frontend] .dl-row--locked:hover{transform:translateY(-1px);box-shadow:0 4px 12px -6px #0b130e1f}[data-zone=frontend] .dl-row-thumb{background:#0c1410;border-radius:10px;flex-shrink:0;align-self:stretch;width:92px;position:relative;overflow:hidden}[data-zone=frontend] .dl-row--wide .dl-row-thumb{aspect-ratio:1;width:110px}[data-zone=frontend] .dl-row-thumb--locked img{filter:grayscale(.7)brightness(.78)}[data-zone=frontend] .dl-row-thumb-fallback{background:linear-gradient(135deg, var(--moss-l) 0%, var(--moss-d) 100%);position:absolute;inset:0}[data-zone=frontend] .dl-row-thumb-overlay{pointer-events:none;background:linear-gradient(#ffffff0f 0%,#0000 30% 70%,#0b130e66 100%);position:absolute;inset:0}[data-zone=frontend] .dl-row-lock{-webkit-backdrop-filter:blur(8px);width:26px;height:26px;color:var(--paper);background:#0b130eb3;border:1px solid #fff3;border-radius:50%;place-items:center;display:grid;position:absolute;top:8px;right:8px}[data-zone=frontend] .dl-row-lock svg{width:12px;height:12px}[data-zone=frontend] .dl-row-body{flex-direction:column;flex:1;justify-content:space-between;min-width:0;display:flex}[data-zone=frontend] .dl-row-title{letter-spacing:-.01em;color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}[data-zone=frontend] .dl-row-meta{margin-top:8px}[data-zone=frontend] .dl-row-meta-row{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;justify-content:space-between;margin-bottom:5px;font-size:10.5px;display:flex}[data-zone=frontend] .dl-row-locked-meta{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;align-items:center;gap:4px;margin-top:8px;font-size:10.5px;display:inline-flex}[data-zone=frontend] .dl-row-locked-meta svg{width:12px;height:12px}[data-zone=frontend] .dl-row-cta{margin-top:10px;padding-top:5px;padding-bottom:5px}[data-zone=frontend] .dl-bar{background:#0b130e14;border-radius:999px;width:100%;height:4px;overflow:hidden}[data-zone=frontend] .dl-bar--md{height:6px}[data-zone=frontend] .dl-bar-fill{background:linear-gradient(90deg, var(--moss-l), var(--moss));border-radius:999px;height:100%;transition:width .4s}[data-zone=frontend] .dl-bar-fill--lit{box-shadow:0 0 8px #2f6a3a66}[data-zone=frontend] .dl-upgrade{background:linear-gradient(90deg,#e0a04a1f,#e0a04a0a);border:1px solid #e0a04a40;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:14px 18px;display:flex}[data-zone=frontend] .dl-upgrade-left{align-items:center;gap:12px;min-width:0;display:flex}[data-zone=frontend] .dl-upgrade-icon{background:linear-gradient(140deg, var(--amber), #b97a22);width:30px;height:30px;color:var(--paper);border-radius:8px;flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .dl-upgrade-icon svg{width:14px;height:14px}[data-zone=frontend] .dl-upgrade-headline{color:var(--ink);font-size:13.5px;font-weight:500}[data-zone=frontend] .dl-upgrade-headline em{color:var(--moss-d);font-style:normal}[data-zone=frontend] .dl-upgrade-sub{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-top:2px;font-size:10.5px}[data-zone=frontend] .dl-upgrade-right{flex-shrink:0;align-items:center;gap:14px;display:flex}[data-zone=frontend] .dl-upgrade-price{color:var(--ink);font-size:18px;font-weight:500}[data-zone=frontend] .dl-upgrade-right .dl-btn--sm{padding-top:5px;padding-bottom:5px}[data-zone=frontend] .dl-need-help{justify-content:center;margin-top:64px;display:flex}[data-zone=frontend] .dl-need-help-pill{-webkit-backdrop-filter:blur(14px)saturate(160%);background:#f7f6f0d9;border:1px solid #fff9;border-radius:999px;align-items:center;gap:14px;padding:10px 14px 10px 18px;display:flex;box-shadow:inset 0 1px #ffffffd9,0 6px 18px -6px #0b130e26}[data-zone=frontend] .dl-need-help-icon{width:28px;height:28px;color:var(--moss-d);background:#b5d58e66;border-radius:50%;flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .dl-need-help-icon svg{width:14px;height:14px}[data-zone=frontend] .dl-need-help-text{color:var(--ink);font-size:13.5px}[data-zone=frontend] .dl-need-help-text span{color:var(--ink-2)}[data-zone=frontend] .dl-need-help-cta{background:linear-gradient(180deg, var(--ink), #1f2a22);color:var(--paper);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}[data-zone=frontend] .dl-need-help-cta svg{width:12px;height:12px}[data-zone=frontend] .dl-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:72px 24px;display:flex}[data-zone=frontend] .dl-empty-icon{width:72px;height:72px;color:var(--moss-d);background:#b5d58e59;border-radius:18px;place-items:center;margin-bottom:22px;display:grid}[data-zone=frontend] .dl-empty-icon svg{width:32px;height:32px}[data-zone=frontend] .dl-empty-title{letter-spacing:-.02em;color:var(--ink);margin-bottom:8px;font-size:22px;font-weight:500}[data-zone=frontend] .dl-empty-sub{color:var(--ink-2);max-width:440px;margin:0 auto 28px;font-size:15px}[data-zone=frontend] .dl-loading{color:var(--moss-d);justify-content:center;align-items:center;padding:96px 0;display:flex}[data-zone=frontend] .dl-loading svg{width:32px;height:32px;animation:1s linear infinite dl-spin}@keyframes dl-spin{to{transform:rotate(360deg)}}[data-zone=frontend] .dl-section+.dl-section{margin-top:56px}@media (max-width:960px){[data-zone=frontend] .dl-program{grid-template-columns:1fr}[data-zone=frontend] .dl-program-side{border-bottom:1px solid #0b130e14;border-right:0}[data-zone=frontend] .dl-rows--wide{grid-template-columns:1fr 1fr}}@media (max-width:640px){[data-zone=frontend] .dl-shell{padding:36px 0 64px}[data-zone=frontend] .dl-program-side,[data-zone=frontend] .dl-program-body{padding:20px}[data-zone=frontend] .dl-rows,[data-zone=frontend] .dl-rows--wide{grid-template-columns:1fr}[data-zone=frontend] .dl-upgrade{flex-direction:column;align-items:flex-start;gap:12px}[data-zone=frontend] .dl-upgrade-right{justify-content:space-between;width:100%}[data-zone=frontend] .dl-need-help{margin-top:40px}[data-zone=frontend] .dl-need-help-pill{text-align:center;border-radius:18px;flex-direction:column;padding:16px}[data-zone=frontend] .dl-section+.dl-section{margin-top:40px}}[data-zone=frontend] .as-shell{padding:56px 0 80px}[data-zone=frontend] .as-header{margin-bottom:36px}[data-zone=frontend] .as-header h1{letter-spacing:-.025em;color:var(--ink);margin:0;font-size:clamp(32px,4vw,44px);font-weight:500;line-height:1.05}[data-zone=frontend] .as-header h1 .it{color:var(--moss-d);font-weight:500}[data-zone=frontend] .as-header p{color:var(--ink-2);max-width:560px;margin:10px 0 0;font-size:15px}[data-zone=frontend] .as-grid{grid-template-columns:1fr 1fr;align-items:start;gap:22px;display:grid}[data-zone=frontend] .as-col{flex-direction:column;gap:22px;display:flex}[data-zone=frontend] .as-card{-webkit-backdrop-filter:blur(18px)saturate(160%);background:#f7f6f0b8;border:1px solid #ffffff9e;border-radius:22px;padding:28px;box-shadow:inset 0 1px #ffffffd9,0 6px 20px -10px #0b130e26,0 22px 50px -16px #0b130e29}[data-zone=frontend] .as-section-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}[data-zone=frontend] .as-section-head-main{align-items:center;gap:14px;display:flex}[data-zone=frontend] .as-section-action{text-align:right}[data-zone=frontend] .as-section-action-label{letter-spacing:.12em}[data-zone=frontend] .as-section-action-value{color:var(--ink-2);margin-top:2px;font-size:13.5px}[data-zone=frontend] .as-fields{flex-direction:column;gap:16px;display:flex}[data-zone=frontend] .as-field{display:block}[data-zone=frontend] .as-field-label{color:var(--ink-2);letter-spacing:-.005em;margin-bottom:7px;font-size:12px;font-weight:500;display:block}[data-zone=frontend] .as-field-hint{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-top:6px;font-size:10.5px}[data-zone=frontend] .as-field-hint--warn{color:var(--amber)}[data-zone=frontend] .as-field-hint--err{color:#c62f2f}[data-zone=frontend] .as-input-wrap{background:var(--paper);border:1px solid #0b130e1a;border-radius:12px;align-items:center;padding:11px 14px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;box-shadow:inset 0 1px #fff9,inset 0 0 0 1px #ffffff80}[data-zone=frontend] .as-input-wrap:focus-within{border-color:var(--moss);box-shadow:0 0 0 3px #2f6a3a2e}[data-zone=frontend] .as-input-icon{color:var(--ink-3);place-items:center;margin-right:10px;display:grid}[data-zone=frontend] .as-input-icon svg{width:16px;height:16px}[data-zone=frontend] .as-input{appearance:none;color:var(--ink);letter-spacing:-.005em;background:0 0;border:0;outline:none;flex:1;min-width:0;font-family:inherit;font-size:14px}[data-zone=frontend] .as-input::placeholder{color:var(--ink-3)}[data-zone=frontend] .as-input:focus,[data-zone=frontend] .as-input:focus-visible{box-shadow:none;outline:none}[data-zone=frontend] .as-input::-webkit-contacts-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0;display:none!important}[data-zone=frontend] .as-input::-webkit-credentials-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0;display:none!important}[data-zone=frontend] .as-input-toggle{cursor:pointer;color:var(--ink-3);background:0 0;border:0;place-items:center;width:22px;height:22px;padding:0;display:grid}[data-zone=frontend] .as-input-toggle:hover{color:var(--ink)}[data-zone=frontend] .as-input-toggle svg{width:16px;height:16px}[data-zone=frontend] .as-pw-rules{background:#1f4a280a;border:1px solid #1f4a281a;border-radius:12px;grid-template-columns:1fr 1fr;gap:6px 18px;padding:12px 14px;display:grid}[data-zone=frontend] .as-pw-rule{color:var(--ink-3);align-items:center;gap:8px;font-family:inherit;font-size:12.5px;display:flex}[data-zone=frontend] .as-pw-rule--met{color:var(--moss-d)}[data-zone=frontend] .as-pw-dot{width:14px;height:14px;color:var(--paper);background:0 0;border:1.5px solid #0b130e2e;border-radius:50%;flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .as-pw-dot svg{width:9px;height:9px}[data-zone=frontend] .as-pw-rule--met .as-pw-dot{background:var(--moss);border-color:var(--moss)}[data-zone=frontend] .as-success{background:#6ee87024;border:1px solid #2f6a3a2e;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}[data-zone=frontend] .as-success-icon{width:24px;height:24px;color:var(--moss-d);background:#2f6a3a2e;border-radius:50%;flex-shrink:0;place-items:center;display:grid}[data-zone=frontend] .as-success-icon svg{width:14px;height:14px}[data-zone=frontend] .as-success-title{color:var(--moss-d);font-size:13px;font-weight:500}[data-zone=frontend] .as-success-sub{color:var(--ink-2);margin-top:1px;font-size:11.5px}[data-zone=frontend] .as-no-pw{text-align:center;background:#1f4a280a;border:1px solid #1f4a281a;border-radius:14px;padding:24px 16px}[data-zone=frontend] .as-no-pw-icon{width:48px;height:48px;color:var(--moss-d);background:#b5d58e66;border-radius:14px;place-items:center;margin:0 auto 12px;display:grid}[data-zone=frontend] .as-no-pw-icon svg{width:22px;height:22px}[data-zone=frontend] .as-no-pw-title{color:var(--ink);margin-bottom:4px;font-size:14px;font-weight:500}[data-zone=frontend] .as-no-pw-sub{color:var(--ink-3);font-size:12px}[data-zone=frontend] .as-orders{flex-direction:column;gap:10px;display:flex}[data-zone=frontend] .as-order{background:#ffffff8c;border:1px solid #0b130e0f;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:14px 16px;transition:transform .15s,box-shadow .15s,background .15s;display:grid}[data-zone=frontend] .as-order:hover{background:#ffffffd9;transform:translateY(-1px);box-shadow:0 6px 16px -8px #0b130e2e}[data-zone=frontend] .as-order-main{min-width:0}[data-zone=frontend] .as-order-meta{align-items:center;gap:10px;margin-bottom:4px;display:flex}[data-zone=frontend] .as-order-id{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;font-size:10.5px}[data-zone=frontend] .as-order-dot{background:var(--ink-3);opacity:.4;border-radius:50%;width:3px;height:3px}[data-zone=frontend] .as-order-date{color:var(--ink-3);font-size:12px}[data-zone=frontend] .as-order-titles{flex-direction:column;gap:2px;display:flex}[data-zone=frontend] .as-order-title{letter-spacing:-.01em;color:var(--ink);font-size:14px;font-weight:500;line-height:1.35}[data-zone=frontend] .as-order-receipt{cursor:pointer;color:var(--moss-d);background:0 0;border:0;align-items:center;gap:5px;margin-top:8px;padding:0;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}[data-zone=frontend] .as-order-receipt:hover{color:var(--moss)}[data-zone=frontend] .as-order-receipt svg{width:13px;height:13px}[data-zone=frontend] .as-order-side{text-align:right}[data-zone=frontend] .as-order-amount{letter-spacing:-.02em;color:var(--ink);font-size:20px;font-weight:500}[data-zone=frontend] .as-order-paid{color:var(--moss-d);margin-top:2px;font-size:9.5px}[data-zone=frontend] .as-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px 16px;display:flex}[data-zone=frontend] .as-empty-icon{width:56px;height:56px;color:var(--moss-d);background:#b5d58e59;border-radius:16px;place-items:center;margin-bottom:16px;display:grid}[data-zone=frontend] .as-empty-icon svg{width:26px;height:26px}[data-zone=frontend] .as-empty-title{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:500}[data-zone=frontend] .as-empty-sub{color:var(--ink-3);max-width:280px;font-size:13px}[data-zone=frontend] .as-loading{color:var(--moss-d);justify-content:center;align-items:center;padding:96px 0;display:flex}[data-zone=frontend] .as-loading svg{width:32px;height:32px;animation:1s linear infinite dl-spin}@media (max-width:960px){[data-zone=frontend] .as-grid{grid-template-columns:1fr}[data-zone=frontend] .as-card--sticky{position:static}}@media (max-width:640px){[data-zone=frontend] .as-shell{padding:36px 0 64px}[data-zone=frontend] .as-card{border-radius:18px;padding:20px}[data-zone=frontend] .as-section-head{flex-direction:column;align-items:flex-start;gap:10px}[data-zone=frontend] .as-section-action{text-align:left}[data-zone=frontend] .as-pw-rules{grid-template-columns:1fr}[data-zone=frontend] .as-order{padding:12px 14px}[data-zone=frontend] .as-order-amount{font-size:18px}}[data-zone=frontend] .auth-shell{background:#060b08;min-height:100vh;position:relative;overflow:hidden}[data-zone=frontend] .auth-aurora{z-index:0;pointer-events:none;background:radial-gradient(#11201a 0%,#060b08 70%,#04080a 100%);position:fixed;inset:0;overflow:hidden}[data-zone=frontend] .auth-aurora-layer{filter:blur(80px)saturate(140%);opacity:.85;mix-blend-mode:screen;will-change:transform;position:absolute;inset:-20%}[data-zone=frontend] .auth-aurora-layer--1{background:radial-gradient(40% 35% at 20% 30%,#2f6a3ad9,#0000 60%),radial-gradient(35% 30% at 80% 22%,#1f4a28f2,#0000 60%);animation:18s ease-in-out infinite alternate auth-aurora-drift-1}[data-zone=frontend] .auth-aurora-layer--2{background:radial-gradient(45% 40% at 75% 80%,#b5d58e73,#0000 60%),radial-gradient(30% 28% at 15% 78%,#2f6a3a8c,#0000 60%);animation:23s ease-in-out infinite alternate auth-aurora-drift-2}[data-zone=frontend] .auth-aurora-layer--3{background:radial-gradient(30% 28%,#e0a04a47,#0000 65%),radial-gradient(22% 22% at 88%,#b5d58e4d,#0000 65%);animation:29s ease-in-out infinite alternate auth-aurora-drift-3}[data-zone=frontend] .auth-aurora-noise{opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}@keyframes auth-aurora-drift-1{0%{transform:translate(-7%,-5%)rotate(-5deg)scale(1)}to{transform:translate(9%,7%)rotate(12deg)scale(1.2)}}@keyframes auth-aurora-drift-2{0%{transform:translate(6%,4%)rotate(4deg)scale(1.05)}to{transform:translate(-8%,-6%)rotate(-9deg)scale(1.22)}}@keyframes auth-aurora-drift-3{0%{transform:translate(0,0)rotate(0)scale(1)}50%{transform:translate(7%,-6%)rotate(7deg)scale(1.14)}to{transform:translate(-6%,6%)rotate(-6deg)scale(1.18)}}@media (prefers-reduced-motion:reduce){[data-zone=frontend] .auth-aurora-layer{animation:none!important}}[data-zone=frontend] .auth-topbar{z-index:20;pointer-events:none;justify-content:flex-end;align-items:center;padding:22px 32px;display:flex;position:absolute;top:0;left:0;right:0}[data-zone=frontend] .auth-switch{pointer-events:auto;-webkit-backdrop-filter:blur(14px)saturate(160%);background:#f7f6f00f;border:1px solid #f7f6f01a;border-radius:999px;padding:4px;display:inline-flex}[data-zone=frontend] .auth-switch-btn{color:#f7f6f0b3;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}[data-zone=frontend] .auth-switch-btn:hover{color:var(--paper)}[data-zone=frontend] .auth-switch-btn.is-active{background:var(--paper);color:var(--ink);box-shadow:0 1px #0000001a}[data-zone=frontend] .auth-content{z-index:5;position:relative}@media (max-width:640px){[data-zone=frontend] .auth-topbar{padding:16px 18px}[data-zone=frontend] .auth-switch-btn{padding:6px 11px;font-size:12.5px}}[data-zone=frontend] .ps-page{background:var(--bg);position:relative;overflow-x:clip}[data-zone=frontend] .ps-main{z-index:1;place-items:start center;padding:64px 24px 40px;display:grid;position:relative}[data-zone=frontend] .ps-card{text-align:center;background:#f7f6f0c7;border-radius:24px;width:100%;max-width:440px;padding:28px 32px 0;line-height:normal;position:relative;box-shadow:inset 0 1px #ffffffd9,inset 0 -1px #0000000a,0 1px #0b130e0a,0 30px 70px -20px #0b130e38,0 60px 120px -30px #0b130e2e}[data-zone=frontend] .ps-card.ps-card--plain{padding-bottom:28px}[data-zone=frontend] .ps-badge{place-items:center;width:72px;height:72px;margin:0 auto 12px;display:grid;position:relative}[data-zone=frontend] .ps-badge-ring{background:radial-gradient(circle,#2f6a3a2e,#0000 65%);border-radius:50%;position:absolute;inset:0}[data-zone=frontend] .ps-badge-ring--2{background:radial-gradient(circle,#b5d58e59,#0000 70%);inset:-12px}[data-zone=frontend] .ps-badge-core{background:linear-gradient(145deg, var(--moss-l) 0%, var(--moss) 55%, var(--moss-d) 100%);width:54px;height:54px;color:var(--paper);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:inset 0 1px #ffffff80,inset 0 -2px 4px #0003,0 8px 24px -4px #1f4a288c,0 0 0 6px #f7f6f099}[data-zone=frontend] .ps-badge-core--muted{background:linear-gradient(145deg, #f0c48e 0%, var(--amber) 55%, #b97e2e 100%);box-shadow:inset 0 1px #ffffff80,inset 0 -2px 4px #0003,0 8px 24px -4px #a06e1e73,0 0 0 6px #f7f6f099}[data-zone=frontend] .ps-eyebrow{border:1px solid var(--line);letter-spacing:.04em;color:var(--ink-2);background:#ffffff80;border-radius:999px;align-items:center;gap:8px;margin-bottom:12px;padding:6px 14px;font-size:11px;display:inline-flex}[data-zone=frontend] .ps-dot{background:var(--moss);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #2f6a3a2e}[data-zone=frontend] .ps-dot--muted{background:var(--amber);box-shadow:0 0 0 3px #e0a04a38}[data-zone=frontend] .ps-title{letter-spacing:-.035em;color:var(--ink);white-space:nowrap;margin:0;font-size:clamp(28px,8vw,34px);font-weight:500;line-height:1.05}[data-zone=frontend] .ps-sub{color:var(--ink-2);margin:14px 0 0;font-size:14.5px;line-height:1.55}[data-zone=frontend] .ps-sub+.ps-ctas{margin-top:22px}[data-zone=frontend] .ps-step{text-align:left;background:linear-gradient(#dbf0ae80,#dbf0ae40);border:1px solid #2f6a3a2e;border-radius:14px;margin:22px 0 14px;padding:13px 16px}[data-zone=frontend] .ps-step+.ps-step{margin-top:-6px}[data-zone=frontend] .ps-step-label{color:var(--moss-d);align-items:center;gap:8px;margin-bottom:6px;font-size:11px;font-weight:600;display:inline-flex}[data-zone=frontend] .ps-step-body{color:var(--ink);font-size:14.5px;line-height:1.5}[data-zone=frontend] .ps-step .btn{margin-top:14px}[data-zone=frontend] .ps-ctas{gap:8px;display:grid}[data-zone=frontend] .ps-ctas .btn{width:100%}[data-zone=frontend] .ps-title+.ps-ctas{margin-top:22px}[data-zone=frontend] .ps-card .btn{justify-content:center;padding:11px 20px}[data-zone=frontend] .ps-bypass{font-family:var(--mono);color:var(--ink-3);margin-top:12px;font-size:13.5px;text-decoration:none;transition:color .15s;display:inline-block}[data-zone=frontend] .ps-bypass:hover{color:var(--ink)}[data-zone=frontend] .ps-foot{border-top:1px solid var(--line);text-align:left;color:var(--ink-3);background:#0b130e08;border-radius:0 0 24px 24px;align-items:flex-start;gap:10px;margin:11px -32px 0;padding:13px 32px;font-size:12.5px;line-height:1.5;display:flex}[data-zone=frontend] .ps-foot svg{color:var(--moss);flex-shrink:0;margin-top:1px}[data-zone=frontend] .ps-foot b{color:var(--ink);font-weight:600}@media (max-width:520px){[data-zone=frontend] .ps-main{padding:40px 16px}[data-zone=frontend] .ps-card{padding:24px 22px 0}[data-zone=frontend] .ps-title{white-space:normal}[data-zone=frontend] .ps-foot{margin:11px -22px 0;padding:13px 22px}}[data-zone=frontend] .al-page{background:var(--bg);position:relative;overflow-x:clip}[data-zone=frontend] .al-main{z-index:1;place-items:start center;padding:48px 24px 64px;display:grid;position:relative}[data-zone=frontend] .al-card{background:#f7f6f0c7;border-radius:24px;width:100%;max-width:560px;padding:32px 32px 28px;line-height:normal;position:relative;box-shadow:inset 0 1px #ffffffd9,inset 0 -1px #0000000a,0 1px #0b130e0a,0 30px 70px -20px #0b130e38,0 60px 120px -30px #0b130e2e}[data-zone=frontend] .al-card--confirm{text-align:center}[data-zone=frontend] .al-card--confirm .ps-ctas{margin-top:22px}[data-zone=frontend] .al-card .btn{justify-content:center;width:100%;padding:12px 20px}[data-zone=frontend] .al-sub{max-width:450px;color:var(--ink-2);margin-top:12px;font-size:15px;line-height:1.5}[data-zone=frontend] .al-card--confirm .al-sub{margin-left:auto;margin-right:auto}[data-zone=frontend] .al-loading{color:var(--ink-3);flex-direction:column;align-items:center;gap:12px;padding-top:48px;font-size:14px;display:flex}[data-zone=frontend] .al-spinner{color:var(--moss)}[data-zone=frontend] .al-state{text-align:center}[data-zone=frontend] .al-state-icon{width:64px;height:64px;color:var(--rose);background:#e07a6e1f;border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}[data-zone=frontend] .al-state .al-sub{margin:8px auto 4px}[data-zone=frontend] .al-product+.al-product{border-top:1px dashed var(--line);margin-top:18px;padding-top:18px}[data-zone=frontend] .al-courseRow{border:1px solid var(--line);background:#f7f6f08c;border-radius:14px;grid-template-columns:56px 1fr auto;align-items:center;gap:14px;margin-top:24px;padding:14px 16px;display:grid}[data-zone=frontend] .al-thumb{background:linear-gradient(135deg, var(--moss-d), #0f2d17 60%, #1f4a28);border-radius:12px;flex-shrink:0;place-items:center;width:56px;height:56px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1a}[data-zone=frontend] .al-thumb:before{content:"";background:radial-gradient(circle at 30% 30%,#b5d58e73,#0000 60%),radial-gradient(circle at 80% 80%,#e0a04a4d,#0000 60%);position:absolute;inset:0}[data-zone=frontend] .al-thumb img{object-fit:cover;width:100%;height:100%;position:relative}[data-zone=frontend] .al-mark{font-family:var(--mono);letter-spacing:-.02em;color:var(--moss-h);font-size:18px;font-weight:700;position:relative}[data-zone=frontend] .al-courseRow-tag{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px}[data-zone=frontend] .al-courseRow-name{letter-spacing:-.01em;color:var(--ink);margin:2px 0 0;font-size:16px;font-weight:500}[data-zone=frontend] .al-seats{text-align:right}[data-zone=frontend] .al-seatBig{font-family:var(--mono);letter-spacing:-.02em;color:var(--moss-d);font-size:22px;font-weight:600;line-height:1}[data-zone=frontend] .al-seatBig .total{color:var(--ink-3);font-weight:500}[data-zone=frontend] .al-seatLbl{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-top:4px;font-size:10.5px}[data-zone=frontend] .al-progress{background:#0b130e0f;border-radius:999px;height:6px;margin-top:12px;overflow:hidden}[data-zone=frontend] .al-progress-fill{background:linear-gradient(90deg, var(--moss-l), var(--moss));border-radius:999px;height:100%;transition:width .3s;box-shadow:0 0 12px #6ee87080}[data-zone=frontend] .al-chips{background:var(--paper);border:1px solid var(--line-2);border-radius:14px;margin-top:18px;padding:12px 12px 10px}[data-zone=frontend] .al-chips-label{border-bottom:1px dashed var(--line);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;align-items:center;margin-bottom:10px;padding:2px 4px 10px;font-size:11px;display:flex}[data-zone=frontend] .al-chips-list{flex-wrap:wrap;gap:6px;display:flex}[data-zone=frontend] .al-chip{background:var(--moss-h);max-width:100%;color:var(--moss-d);border:1px solid #2f6a3a2e;border-radius:999px;align-items:center;gap:8px;padding:5px 5px 5px 10px;font-size:13px;display:inline-flex}[data-zone=frontend] .al-chip-avatar{background:linear-gradient(135deg, var(--moss), var(--moss-d));width:22px;height:22px;color:var(--paper);font-family:var(--mono);border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;font-weight:600;display:inline-grid}[data-zone=frontend] .al-chip-mail{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:500;overflow:hidden}[data-zone=frontend] .al-chip-x{width:18px;height:18px;color:var(--moss-d);cursor:pointer;background:#2f6a3a1a;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}[data-zone=frontend] .al-chip-x:hover{background:#2f6a3a33}[data-zone=frontend] .al-chip--self{border-color:var(--line-2);color:var(--ink-2);background:#f7f6f0e6}[data-zone=frontend] .al-chip--self .al-chip-avatar{background:linear-gradient(135deg, var(--amber), #c0823a);color:var(--ink)}[data-zone=frontend] .al-chip-tag{color:var(--ink-2);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;background:#0b130e14;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:9px}[data-zone=frontend] .al-input{border:1px dashed var(--line-2);background:#f7f6f080;border-radius:10px;align-items:center;gap:10px;margin-top:10px;padding:6px 6px 6px 12px;display:flex}[data-zone=frontend] .al-input:focus-within{border-style:solid;border-color:var(--moss);box-shadow:0 0 0 3px #2f6a3a2e}[data-zone=frontend] .al-input.is-error{border-style:solid;border-color:var(--rose)}[data-zone=frontend] .al-input>svg{color:var(--ink-3);flex-shrink:0}[data-zone=frontend] .al-input input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:8px 0;font-family:inherit;font-size:14px}[data-zone=frontend] .al-input input::placeholder{color:var(--ink-3)}[data-zone=frontend] .al-input input:disabled{cursor:not-allowed}[data-zone=frontend] .al-input input:focus,[data-zone=frontend] .al-input input:focus-visible{box-shadow:none;outline:none}[data-zone=frontend] .al-add{background:linear-gradient(180deg, var(--ink), #1f2a22);color:var(--paper);cursor:pointer;border:0;border-radius:8px;flex-shrink:0;align-items:center;gap:4px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffff2e}[data-zone=frontend] .al-add:disabled{opacity:.4;cursor:not-allowed}[data-zone=frontend] .al-error{color:var(--rose);align-items:center;gap:5px;margin:8px 2px 2px;font-size:12px;display:flex}[data-zone=frontend] .al-allset{color:var(--moss-d);background:#2f6a3a12;border-radius:10px;align-items:center;gap:6px;margin-top:10px;padding:9px 12px;font-size:12.5px;font-weight:500;display:flex}[data-zone=frontend] .al-actions{gap:10px;margin-top:22px;display:grid}[data-zone=frontend] .al-mutation-error{color:#9b3a2e;background:#e07a6e1a;border:1px solid #e07a6e4d;border-radius:12px;align-items:flex-start;gap:8px;padding:12px 14px;font-size:13px;display:flex}[data-zone=frontend] .al-mutation-error svg{flex-shrink:0;margin-top:1px}[data-zone=frontend] .al-roster{text-align:left;border:1px solid var(--line);background:#f7f6f08c;border-radius:14px;margin-top:22px;padding:14px 16px}[data-zone=frontend] .al-roster+.al-roster{margin-top:12px}[data-zone=frontend] .al-roster-head{border-bottom:1px dashed var(--line);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;padding-bottom:10px;font-size:11px;display:flex}[data-zone=frontend] .al-roster-head b{color:var(--ink);font-weight:600}[data-zone=frontend] .al-roster-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}[data-zone=frontend] .al-roster-row{align-items:center;gap:10px;padding:8px 4px;display:flex}[data-zone=frontend] .al-roster-row+.al-roster-row{border-top:1px solid var(--line)}[data-zone=frontend] .al-roster-avatar{background:linear-gradient(135deg, var(--moss-l), var(--moss));width:28px;height:28px;color:var(--ink);font-family:var(--mono);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:inline-grid}[data-zone=frontend] .al-roster-avatar--self{background:linear-gradient(135deg, var(--amber), #c0823a)}[data-zone=frontend] .al-roster-mail{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:500;overflow:hidden}[data-zone=frontend] .al-roster-stat{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--moss-d);flex-shrink:0;align-items:center;gap:4px;font-size:10.5px;font-weight:600;display:inline-flex}[data-zone=frontend] .al-roster-stat svg{color:var(--moss)}@media (max-width:560px){[data-zone=frontend] .al-card{padding:24px 22px 20px}[data-zone=frontend] .al-courseRow{gap:12px;padding:12px}}[data-zone=frontend] .legal-head{padding-top:92px}[data-zone=frontend] .legal-head .wrap{max-width:880px}[data-zone=frontend] .legal-head .hero-inner{max-width:none}[data-zone=frontend] .legal-shell{padding:8px 0 120px;position:relative}[data-zone=frontend] .legal-shell .wrap{max-width:880px}[data-zone=frontend] .legal-intro{-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);color:var(--ink-2);background:#f7f6f09e;border:1px solid #fff9;border-radius:16px;margin:0 0 56px;padding:22px 26px;font-size:15.5px;line-height:1.7;box-shadow:inset 0 1px #ffffffd9,0 8px 24px -12px #0b130e1f}[data-zone=frontend] .legal-section{margin-bottom:40px}[data-zone=frontend] .legal-section>h2{font-family:var(--sans);letter-spacing:-.01em;color:var(--moss-d);margin:0 0 10px;font-size:19px;font-weight:600;line-height:1.35}[data-zone=frontend] .legal-section h4{color:var(--ink);margin:24px 0 8px;font-size:16.5px;font-weight:600}[data-zone=frontend] .legal-prose{color:var(--ink-2)}[data-zone=frontend] .legal-prose p{color:var(--ink-2);margin:0 0 1.1em;font-size:16.5px;line-height:1.72}[data-zone=frontend] .legal-prose p:last-child{margin-bottom:0}[data-zone=frontend] .legal-prose ul{margin:0 0 1.1em;padding-left:24px;list-style:outside}[data-zone=frontend] .legal-prose li{color:var(--ink-2);margin-bottom:8px;font-size:16.5px;line-height:1.7}[data-zone=frontend] .legal-prose li::marker{color:var(--ink-3)}[data-zone=frontend] .legal-prose a{color:var(--moss-d);border-bottom:1px solid #1f4a284d;text-decoration:none;transition:border-color .15s}[data-zone=frontend] .legal-prose a:hover{border-bottom-color:var(--moss-d)}[data-zone=frontend] .legal-prose .legal-fineprint{letter-spacing:.01em;color:var(--ink-3);font-size:12.5px;line-height:1.7}