.ft-site{display:flex;flex-direction:column;min-height:100dvh}.ft-site>.ft-header{align-self:stretch;width:100%}.ft-marketing{flex:1 1 auto;width:100%}.ft-page{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:72px 0 96px}.ft-page-header{max-width:720px}.ft-page-header[data-align=center]{margin:0 auto;text-align:center}.ft-page-header h1{margin:0;font:600 32px/1.375 var(--ft-font-display);letter-spacing:-.02em}.ft-page-header p{margin:16px 0 0;color:var(--ft-muted);font-size:16px;line-height:1.8}.ft-page-header+*{margin-top:56px}.ft-home button.ft-soon:disabled{cursor:default;opacity:1;color:var(--ft-muted);background:color-mix(in srgb,var(--ft-hover) 70%,var(--ft-bg))}.ft-download-hero{display:flex;flex-direction:column;align-items:center;gap:22px;margin-top:56px}.ft-download-hero .ft-soon{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:min(280px,100%);min-height:48px;padding:12px 28px;border:0;border-radius:999px;font:inherit;font-size:16px}.ft-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}.ft-plan{display:flex;flex-direction:column;min-height:100%;padding:32px 28px 28px;border:1px solid var(--ft-line);border-radius:24px;background:color-mix(in srgb,var(--ft-hover) 32%,var(--ft-bg))}.ft-plan[data-featured=true]{border-color:color-mix(in srgb,var(--ft-text) 28%,var(--ft-line));box-shadow:0 12px 32px color-mix(in srgb,var(--ft-text) 6%,transparent)}.ft-plan h2{margin:0;font:600 24px/1.333333 var(--ft-font-display)}.ft-plan-summary{margin:10px 0 0;color:var(--ft-muted);font-size:14px;line-height:1.7;min-height:2.8em}.ft-plan-price{display:flex;align-items:baseline;gap:6px;margin:22px 0 0;letter-spacing:-.03em}.ft-plan-amount{font-size:40px;font-weight:500;line-height:1}.ft-plan-period{color:var(--ft-muted);font-size:14px;letter-spacing:0}.ft-plan .ft-soon{width:100%;min-height:44px;margin:22px 0 0;border:1px solid var(--ft-line);border-radius:999px;background:transparent;font:inherit;font-size:14px}.ft-home .ft-plan .ft-soon:disabled{color:var(--ft-muted);background:transparent}.ft-home .ft-plan[data-featured=true] .ft-soon:disabled{border-color:transparent;background:var(--ft-accent);color:var(--ft-button-text)}.ft-plan-features{display:grid;gap:12px;margin:22px 0 0;padding:0;list-style:none}.ft-plan-features li{display:flex;align-items:flex-start;gap:8px;color:var(--ft-muted);font-size:14px;line-height:1.6}.ft-plan-features svg{flex-shrink:0;margin-top:3px;color:var(--ft-accent)}.ft-faqs{width:min(720px,100%);margin:72px auto 0}.ft-faqs h2{margin:0 0 18px;font:600 24px/1.333333 var(--ft-font-display)}.ft-home .ft-faqs details{border-top:1px solid var(--ft-line)}.ft-home .ft-faqs details:last-child{border-bottom:1px solid var(--ft-line)}.ft-home .ft-faqs summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:14px 0;cursor:pointer;list-style:none;font-size:16px}.ft-home .ft-faqs summary::-webkit-details-marker{display:none}.ft-home .ft-faqs summary svg{flex-shrink:0;color:var(--ft-muted);transition:transform .18s ease}.ft-home .ft-faqs details[open] summary svg{transform:rotate(180deg)}.ft-faqs p{margin:0 0 18px;color:var(--ft-muted);font-size:14px;line-height:1.8}.ft-updates{display:grid;gap:0;margin:48px 0 0;padding:0;list-style:none}.ft-updates li{display:grid;grid-template-columns:148px minmax(0,1fr);gap:32px;align-items:baseline;padding:22px 0;border-top:1px solid color-mix(in srgb,var(--ft-line) 80%,transparent)}.ft-updates time{color:var(--ft-muted);font-size:14px}.ft-updates a,.ft-updates span{color:var(--ft-text);font-size:18px;line-height:1.6;text-decoration:none}.ft-updates a:hover{color:var(--ft-accent)}.ft-updates-empty{margin:48px 0 0;color:var(--ft-muted);font-size:15px}.ft-curriculum-page{width:min(1440px,calc(100% - 32px));margin:0 auto;padding:12px 0 32px}.ft-knowledge-tree--page{width:100%;margin:0}@media (min-width:1200px){.ft-site:has(.ft-curriculum-page){height:100dvh;overflow:hidden}.ft-site:has(.ft-curriculum-page)>.ft-footer{display:none}.ft-site:has(.ft-curriculum-page) .ft-marketing{flex:1 1 auto;min-height:0;display:flex}.ft-curriculum-page{flex:1 1 auto;display:flex;min-height:0;width:100%;max-width:none;margin:0;padding:0 8px 8px}}@media (max-width:960px){.ft-plans{grid-template-columns:1fr}.ft-plan-summary{min-height:0}.ft-updates li{grid-template-columns:1fr;gap:8px}.ft-page{padding:48px 0 72px;width:calc(100% - 32px)}.ft-page-header h1{font-size:32px}}