[{"data":1,"prerenderedAt":12},["ShallowReactive",2],{"page-plugins/slack-forms":3},{"head":4,"jsonld":5,"components":6},{},[],[7],{"id":8,"__component":9,"markup":10,"useContainer":11},213,"micro-components.raw-html","\u003Cdiv class=\"sfl-landing\">\u003Csection class=\"sfl-hero\">\u003Cdiv class=\"sfl-container-wide sfl-hero-inner\">\u003Cdiv class=\"sfl-hero-copy\">\u003Cspan class=\"sfl-eyebrow sfl-pill\">\u003Csvg class=\"sfl-pill-glyph\" viewBox=\"0 0 122 122\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\u003Cpath d=\"M25.8 77.6a12.2 12.2 0 1 1-12.2-12.2h12.2v12.2zm6.1 0a12.2 12.2 0 0 1 24.4 0V108a12.2 12.2 0 0 1-24.4 0V77.6z\" fill=\"#E01E5A\">\u003C/path>\u003Cpath d=\"M44.1 25.8a12.2 12.2 0 1 1 12.2-12.2v12.2H44.1zm0 6.1a12.2 12.2 0 0 1 0 24.4H13.6a12.2 12.2 0 0 1 0-24.4h30.5z\" fill=\"#36C5F0\">\u003C/path>\u003Cpath d=\"M95.9 44.1a12.2 12.2 0 1 1 12.2 12.2H95.9V44.1zm-6.1 0a12.2 12.2 0 0 1-24.4 0V13.6a12.2 12.2 0 0 1 24.4 0v30.5z\" fill=\"#2EB67D\">\u003C/path>\u003Cpath d=\"M77.6 95.9a12.2 12.2 0 1 1-12.2 12.2V95.9h12.2zm0-6.1a12.2 12.2 0 0 1 0-24.4H108a12.2 12.2 0 0 1 0 24.4H77.6z\" fill=\"#ECB22E\">\u003C/path>\u003C/svg>\u003C/span>\u003Cp>\u003Cspan class=\"sfl-eyebrow sfl-pill\">&nbsp;New \u003C/span>\u003Cspan class=\"sfl-eyebrow\">Now on the Slack App Directory&nbsp;\u003Csvg class=\"sfl-arrow\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Cpath d=\"M5 12h14\">\u003C/path>\u003Cpath d=\"m12 5 7 7-7 7\">\u003C/path>\u003C/svg>\u003C/span>\u003C/p>\u003Ch1 class=\"sfl-hero-title\">Forms, surveys &amp; approvals, \u003Ci>right inside Slack.\u003C/i>\u003C/h1>\u003Cp class=\"sfl-lede\">Build a form in two minutes, post it to a channel or DM, and collect responses without anyone leaving Slack. Approvals, schedules, and anonymous mode all live where your team already does.\u003C/p>\u003Cdiv class=\"sfl-hero-ctas\">\u003Ca class=\"sfl-add-to-slack\" target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://app.formester.com/slack/oauth/install\">\u003Csvg viewBox=\"0 0 122 122\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\u003Cpath d=\"M25.8 77.6a12.2 12.2 0 1 1-12.2-12.2h12.2v12.2zm6.1 0a12.2 12.2 0 0 1 24.4 0V108a12.2 12.2 0 0 1-24.4 0V77.6z\" fill=\"#E01E5A\">\u003C/path>\u003Cpath d=\"M44.1 25.8a12.2 12.2 0 1 1 12.2-12.2v12.2H44.1zm0 6.1a12.2 12.2 0 0 1 0 24.4H13.6a12.2 12.2 0 0 1 0-24.4h30.5z\" fill=\"#36C5F0\">\u003C/path>\u003Cpath d=\"M95.9 44.1a12.2 12.2 0 1 1 12.2 12.2H95.9V44.1zm-6.1 0a12.2 12.2 0 0 1-24.4 0V13.6a12.2 12.2 0 0 1 24.4 0v30.5z\" fill=\"#2EB67D\">\u003C/path>\u003Cpath d=\"M77.6 95.9a12.2 12.2 0 1 1-12.2 12.2V95.9h12.2zm0-6.1a12.2 12.2 0 0 1 0-24.4H108a12.2 12.2 0 0 1 0 24.4H77.6z\" fill=\"#ECB22E\">\u003C/path>\u003C/svg>\u003Cspan class=\"sfl-a2s-label\">Add to Slack\u003C/span> \u003C/a>\u003Ca class=\"sfl-btn sfl-btn-secondary sfl-lg\" href=\"#how\">\u003Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Cpolygon points=\"6 3 20 12 6 21 6 3\">\u003C/polygon>\u003C/svg>See how it works&nbsp;\u003C/a>\u003C/div>\u003Cdiv class=\"sfl-hero-meta\">\u003Cspan>\u003Cstrong>Free\u003C/strong> for small teams\u003C/span> \u003Cspan>•\u003C/span> \u003Cspan>Installs in 30 seconds\u003C/span> \u003Cspan>•\u003C/span> \u003Cspan>Works with Slack Enterprise Grid\u003C/span>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-hero-stack\">\u003Cdiv class=\"sfl-ss-frame\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_approve_312c6ce1c1.png\" alt=\"Formester approval message in Slack with Approve and Reject buttons\" loading=\"lazy\">\u003C/div>\u003Cdiv class=\"sfl-ss-frame sfl-ss-frame--modal\" aria-hidden=\"true\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_send_2aab8427ef.png\" alt=\"Send Formester form modal\" loading=\"lazy\">\u003C/div>\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-section\" id=\"how\">\u003Cdiv class=\"sfl-container\">\u003Cdiv class=\"sfl-section-head\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">How it works\u003C/span>\u003C/p>\u003Ch2 class=\"sfl-section-title\">From idea to inbox in three short steps.\u003C/h2>\u003Cp class=\"sfl-section-sub\">No web app, no copy-pasted links. Build, send, and collect responses entirely from the Formester slash command.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-how-grid\">\u003Cdiv class=\"sfl-how-card\">\u003Cdiv class=\"sfl-preview\">\u003Cdiv class=\"sfl-ss-mini\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_build_10480b5500.png\" alt=\"New Formester form modal in Slack\" loading=\"lazy\">\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-text\">\u003Cp>\u003Cspan class=\"sfl-num\">1\u003C/span>\u003C/p>\u003Ch3>Build it with \u003Ccode style=\"border-color:var(--sfl-violet-50);color:var(--sfl-violet-700);font-size:13px;padding:1px 6px;\">/formester new\u003C/code>\u003C/h3>\u003Cp>Native Slack modal. Pick a title, drop in fields, choose approvers, decide if responses are anonymous. Ship it without leaving the conversation.\u003C/p>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-how-card\">\u003Cdiv class=\"sfl-preview\">\u003Cdiv class=\"sfl-ss-mini\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_send_2aab8427ef.png\" alt=\"Send Formester form modal in Slack\" loading=\"lazy\">\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-text\">\u003Cp>\u003Cspan class=\"sfl-num\">2\u003C/span>\u003C/p>\u003Ch3>Send to channels or DMs\u003C/h3>\u003Cp>Pick a channel, a list of people, or both. Post once, post every Monday morning, post the first of the month. Slack-native scheduling.\u003C/p>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-how-card\">\u003Cdiv class=\"sfl-preview\">\u003Cdiv class=\"sfl-ss-mini\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_approve_312c6ce1c1.png\" alt=\"Formester approval message in Slack with Approve and Reject buttons\" loading=\"lazy\">\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-text\">\u003Cp>\u003Cspan class=\"sfl-num\">3\u003C/span>\u003C/p>\u003Ch3>Collect, review, approve\u003C/h3>\u003Cp>Submissions arrive as rich messages. Approvers tap a button. The thread updates with who approved what, so the audit trail writes itself.\u003C/p>\u003C/div>\u003C/div>\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-features sfl-section\" id=\"features\">\u003Cdiv class=\"sfl-container\">\u003Cdiv class=\"sfl-section-head\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">What you get\u003C/span>\u003C/p>\u003Ch2 class=\"sfl-section-title\">Everything you need to run a form on Slack, and nothing you don't.\u003C/h2>\u003C/div>\u003Cdiv class=\"sfl-features-grid\">\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpolyline points=\"20 6 9 17 4 12\">\u003C/polyline>\u003C/svg>\u003C/span>\u003Ch4>One-click approvals\u003C/h4>\u003Cp>Add up to 10 approvers per form. Each gets Approve / Reject buttons inline. Audit who decided what, when.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Crect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\">\u003C/rect>\u003Cline x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\">\u003C/line>\u003Cline x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\">\u003C/line>\u003Cline x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\">\u003C/line>\u003C/svg>\u003C/span>\u003Ch4>Schedules that stick\u003C/h4>\u003Cp>Send now, one-off, daily, weekly, or monthly. The bot posts on time, every time, even when nobody's online.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M12 2l3 7h7l-5.6 4.2L18.5 22 12 17.3 5.5 22l2.1-8.8L2 9h7z\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Anonymous mode\u003C/h4>\u003Cp>Drop submitter names for sensitive surveys like pulse checks, exit interviews, and manager feedback. One toggle, zero re-config.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M3 12h4l3-9 4 18 3-9h4\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Native modals\u003C/h4>\u003Cp>Built on Slack Block Kit. Feels like Slack because it is Slack. No embedded webviews, no broken redirects, no friction.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Channels + DMs\u003C/h4>\u003Cp>Send to a single channel, a list of people, or both. Pulse a team or reach one person without leaving the composer.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-feature\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M3 3v18h18\">\u003C/path>\u003Cpath d=\"m19 9-5 5-4-4-3 3\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Results, summarised\u003C/h4>\u003Cp>Every form gets a live summary view on formester.com with charts, exports, and integrations. No spreadsheet wrangling.\u003C/p>\u003C/div>\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-section\" id=\"approvals\">\u003Cdiv class=\"sfl-container sfl-showcase\">\u003Cdiv class=\"sfl-copy\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">Approvals\u003C/span>\u003C/p>\u003Ch2>Up to ten approvers. One thread. Zero spreadsheets.\u003C/h2>\u003Cp>Submissions land in the channel with everything an approver needs to make a decision. They tap Approve, the form notifies the submitter, and the message updates in place. No second tab, no second tool.\u003C/p>\u003Cul class=\"sfl-bullets\">\u003Cli>\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\u003Cpolyline points=\"20 6 9 17 4 12\">\u003C/polyline>\u003C/svg>Approve / reject buttons rendered with Block Kit\u003C/li>\u003Cli>\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\u003Cpolyline points=\"20 6 9 17 4 12\">\u003C/polyline>\u003C/svg>\"Approved by @name\" context line updates in real time\u003C/li>\u003Cli>\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\u003Cpolyline points=\"20 6 9 17 4 12\">\u003C/polyline>\u003C/svg>Submitter gets a DM when their request is decided\u003C/li>\u003Cli>\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\u003Cpolyline points=\"20 6 9 17 4 12\">\u003C/polyline>\u003C/svg>Full audit log on the Formester web dashboard\u003C/li>\u003C/ul>\u003C/div>\u003Cdiv class=\"sfl-ss-frame\">\u003Cimg src=\"https://formester-strapi.s3.ap-south-1.amazonaws.com/screenshot_approve_312c6ce1c1.png\" alt=\"Approvals in a Slack thread, Formester submissions with Approve / Reject\" loading=\"lazy\">\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-section\" style=\"border-bottom:1px solid var(--sfl-border-light);border-top:1px solid var(--sfl-border-light);\">\u003Cdiv class=\"sfl-container\">\u003Cdiv class=\"sfl-section-head\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">Use cases\u003C/span>\u003C/p>\u003Ch2 class=\"sfl-section-title\">Built for teams that live in Slack.\u003C/h2>\u003Cp class=\"sfl-section-sub\">Replace the patchwork of Google Forms links, Typeform invites, and HR ticketing portals with one slash command.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-uc-grid\">\u003Cdiv class=\"sfl-uc\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\">\u003C/path>\u003Ccircle cx=\"9\" cy=\"7\" r=\"4\">\u003C/circle>\u003Cpath d=\"M22 21v-2a4 4 0 0 0-3-3.87\">\u003C/path>\u003Cpath d=\"M16 3.13a4 4 0 0 1 0 7.75\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>People &amp; HR\u003C/h4>\u003Cp>Pulse surveys, PTO, exit interviews, and manager feedback. All without yet another tool.\u003C/p>\u003Cdiv class=\"sfl-examples\">\u003Cspan class=\"sfl-tag\">PTOPulseeNPSOnboarding\u003C/span>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-uc\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"10\">\u003C/circle>\u003Cpath d=\"m9 12 2 2 4-4\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Operations\u003C/h4>\u003Cp>Standups, retros, weekly status, blocker triage. Templates ship with the app.\u003C/p>\u003Cdiv class=\"sfl-examples\">\u003Cspan class=\"sfl-tag\">StandupRetroStatus\u003C/span>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-uc\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>IT &amp; Finance\u003C/h4>\u003Cp>Hardware requests, vendor approvals, expense pre-approvals, with multi-step approver chains.\u003C/p>\u003Cdiv class=\"sfl-examples\">\u003Cspan class=\"sfl-tag\">HardwareAccessExpenses\u003C/span>\u003C/div>\u003C/div>\u003Cdiv class=\"sfl-uc\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpolygon points=\"12 2 15 8.5 22 9.3 17 14.1 18.2 21 12 17.8 5.8 21 7 14.1 2 9.3 9 8.5\">\u003C/polygon>\u003C/svg>\u003C/span>\u003Ch4>Customer success\u003C/h4>\u003Cp>Internal escalations, customer call recaps, follow-up checklists, routed to the right channel.\u003C/p>\u003Cdiv class=\"sfl-examples\">\u003Cspan class=\"sfl-tag\">EscalationCall notesHealth\u003C/span>\u003C/div>\u003C/div>\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-section sfl-security\" id=\"security\">\u003Cdiv class=\"sfl-container\">\u003Cdiv class=\"sfl-section-head\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">Trust &amp; controls\u003C/span>\u003C/p>\u003Ch2 class=\"sfl-section-title\">Built for IT to say yes to.\u003C/h2>\u003Cp class=\"sfl-section-sub\">We treat your workspace like our own. Least-privilege scopes, encrypted at rest, no surprise data sharing. Ever.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-sec-grid\">\u003Cdiv class=\"sfl-sec-card\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>SOC 2 Type II &amp; GDPR-ready\u003C/h4>\u003Cp>Annual audit, sub-processor list public, DPA available on request. EU data residency on the Business plan.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-sec-card\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\">\u003C/rect>\u003Cpath d=\"M7 11V7a5 5 0 0 1 10 0v4\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Least-privilege scopes\u003C/h4>\u003Cp>We ask for channels:write, chat:write, and commands. Nothing else. Read no DMs, no message history.\u003C/p>\u003C/div>\u003Cdiv class=\"sfl-sec-card\">\u003Cspan class=\"sfl-ic\">\u003Csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\u003Cpath d=\"M3 12a9 9 0 1 0 9-9\">\u003C/path>\u003Cpath d=\"M3 3v6h6\">\u003C/path>\u003C/svg>\u003C/span>\u003Ch4>Enterprise Grid &amp; SSO\u003C/h4>\u003Cp>Org-wide install, SCIM provisioning, SAML SSO, admin allowlists, per-workspace audit log streaming.\u003C/p>\u003C/div>\u003C/div>\u003C/div>\u003C/section>\u003Csection class=\"sfl-final-cta\">\u003Cdiv class=\"sfl-container\">\u003Cp>\u003Cspan class=\"sfl-section-eyebrow\">Get started\u003C/span>\u003C/p>\u003Ch2 class=\"sfl-section-title\">Add Formester to Slack. Send your first form in two minutes.\u003C/h2>\u003Cp class=\"sfl-lede\" style=\"max-width:580px;\">No credit card. No webinar. No \"book a demo\" funnel. Install the app, run \u003Ccode style=\"border-color:var(--sfl-violet-50);color:var(--sfl-violet-700);font-size:14px;padding:1px 6px;\">/formester new\u003C/code>, and go.\u003C/p>\u003Cdiv class=\"sfl-hero-ctas\" style=\"justify-content:center;\">\u003Ca class=\"sfl-add-to-slack\" target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://app.formester.com/slack/oauth/install\">\u003Csvg viewBox=\"0 0 122 122\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\u003Cpath d=\"M25.8 77.6a12.2 12.2 0 1 1-12.2-12.2h12.2v12.2zm6.1 0a12.2 12.2 0 0 1 24.4 0V108a12.2 12.2 0 0 1-24.4 0V77.6z\" fill=\"#E01E5A\">\u003C/path>\u003Cpath d=\"M44.1 25.8a12.2 12.2 0 1 1 12.2-12.2v12.2H44.1zm0 6.1a12.2 12.2 0 0 1 0 24.4H13.6a12.2 12.2 0 0 1 0-24.4h30.5z\" fill=\"#36C5F0\">\u003C/path>\u003Cpath d=\"M95.9 44.1a12.2 12.2 0 1 1 12.2 12.2H95.9V44.1zm-6.1 0a12.2 12.2 0 0 1-24.4 0V13.6a12.2 12.2 0 0 1 24.4 0v30.5z\" fill=\"#2EB67D\">\u003C/path>\u003Cpath d=\"M77.6 95.9a12.2 12.2 0 1 1-12.2 12.2V95.9h12.2zm0-6.1a12.2 12.2 0 0 1 0-24.4H108a12.2 12.2 0 0 1 0 24.4H77.6z\" fill=\"#ECB22E\">\u003C/path>\u003C/svg>\u003Cspan class=\"sfl-a2s-label\">Add to Slack\u003C/span> \u003C/a>\u003Ca class=\"sfl-btn sfl-btn-secondary sfl-lg\" target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://formester.com/contact/\">Talk to sales\u003C/a>\u003C/div>\u003Cdiv class=\"sfl-final-cta-meta\">\u003Cspan>\u003Cstrong>Free\u003C/strong> for up to 50 submissions/mo\u003C/span> \u003Cspan>•\u003C/span> \u003Cspan>Removes in 1 click\u003C/span> \u003Cspan>•\u003C/span> \u003Cspan>Used by 3,400+ teams\u003C/span>\u003C/div>\u003C/div>\u003C/section>\u003C/div>\u003Cstyle>\n/* ==========================================================================\n   Design tokens (scoped to .sfl-landing)\n   ========================================================================== */\n.sfl-landing {\n  --sfl-font-primary: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n  --sfl-font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, 'Roboto Mono', monospace;\n  --sfl-bg-primary:        #ffffff;\n  --sfl-bg-grey-25:        #fcfcfd;\n  --sfl-bg-grey-50:        #f9fafb;\n  --sfl-bg-grey-100:       #f2f4f7;\n  --sfl-bg-violet-25:      #f7f3ff;\n  --sfl-bg-violet-50:      #f0ebfa;\n  --sfl-fg-1:              #101828;\n  --sfl-fg-2:              #475467;\n  --sfl-fg-3:              #697586;\n  --sfl-fg-strong:         #344054;\n  --sfl-gray-50:           #f9fafb;\n  --sfl-gray-100:          #f2f4f7;\n  --sfl-gray-200:          #eaecf0;\n  --sfl-gray-300:          #d0d5dd;\n  --sfl-violet-25:         #f7f3ff;\n  --sfl-violet-50:         #f0ebfa;\n  --sfl-violet-100:        #f4ebff;\n  --sfl-violet-500:        #7f56d9;\n  --sfl-violet-600:        #6434d0;\n  --sfl-violet-700:        #53389e;\n  --sfl-border-light:      #eaecf0;\n  --sfl-border-dark:       #d0d5dd;\n  --sfl-focus-ring-primary: 0 0 0 4px #f4ebff;\n  --sfl-shadow-xs:         0 1px 2px 0 rgba(16, 24, 40, 0.05);\n  --sfl-shadow-sm:         0 1px 3px 0 rgba(16, 24, 40, 0.10);\n  --sfl-shadow-md:         0 2px 4px 0 rgba(16, 24, 40, 0.06);\n  --sfl-shadow-lg:         0 8px 24px -4px rgba(16, 24, 40, 0.08), 0 4px 8px -2px rgba(16, 24, 40, 0.04);\n  --sfl-fs-md:             16px;\n  --sfl-fs-lg:             18px;\n  --sfl-fs-xl:             20px;\n  --sfl-fs-2xl:            24px;\n  --sfl-fs-3xl:            36px;\n  --sfl-fw-regular:        400;\n  --sfl-fw-semibold:       600;\n  --sfl-lh-md:             24px;\n  --sfl-lh-lg:             28px;\n  --sfl-lh-xl:             30px;\n  --sfl-lh-2xl:            32px;\n  --sfl-r:                 4px;\n  --sfl-r-md:              6px;\n  --sfl-r-lg:              8px;\n  --sfl-r-xl:              12px;\n  --sfl-r-2xl:             16px;\n  --sfl-r-full:            9999px;\n  --sfl-slack-aubergine:   #4A154B;\n}\n.sfl-landing, .sfl-landing * { box-sizing: border-box; }\n.sfl-landing { font-family: var(--sfl-font-primary); color: var(--sfl-fg-1); background: var(--sfl-bg-primary); -webkit-font-smoothing: antialiased; font-size: var(--sfl-fs-md); line-height: var(--sfl-lh-md); font-weight: var(--sfl-fw-regular); }\n.sfl-landing h1 { font-size: var(--sfl-fs-3xl); line-height: 44px; font-weight: var(--sfl-fw-semibold); letter-spacing: -0.02em; color: var(--sfl-fg-1); margin: 0 0 16px; }\n.sfl-landing h2 { font-size: var(--sfl-fs-2xl); line-height: var(--sfl-lh-2xl); font-weight: var(--sfl-fw-semibold); letter-spacing: -0.015em; color: var(--sfl-fg-1); margin: 0 0 12px; }\n.sfl-landing h3 { font-size: var(--sfl-fs-xl); line-height: var(--sfl-lh-xl); font-weight: var(--sfl-fw-semibold); letter-spacing: -0.01em; color: var(--sfl-fg-1); margin: 0 0 12px; }\n.sfl-landing h4 { font-size: var(--sfl-fs-lg); line-height: var(--sfl-lh-lg); font-weight: var(--sfl-fw-semibold); color: var(--sfl-fg-1); margin: 0 0 8px; }\n.sfl-landing p { font-size: var(--sfl-fs-md); line-height: var(--sfl-lh-md); color: var(--sfl-fg-2); margin: 0 0 1.25rem; }\n.sfl-landing a { color: var(--sfl-violet-600); text-decoration: none; transition: color 120ms ease; }\n.sfl-landing a:hover { color: var(--sfl-violet-700); text-decoration: none; }\n.sfl-landing code { font-family: var(--sfl-font-mono); background: var(--sfl-gray-100); border: 1px solid var(--sfl-border-light); padding: 1px 6px; border-radius: var(--sfl-r-md); color: var(--sfl-fg-1); font-size: 0.925em; }\n.sfl-landing ::selection { background: var(--sfl-violet-100); color: var(--sfl-violet-700); }\n.sfl-container { max-width: 1200px; margin: 0 auto; padding: 0 32px; }\n.sfl-container-wide { max-width: 1280px; margin: 0 auto; padding: 0 32px; }\n/* Buttons */\n.sfl-btn {\n  display: inline-flex; align-items: center; gap: 8px;\n  font: 600 14px/20px var(--sfl-font-primary);\n  padding: 10px 16px; border-radius: var(--sfl-r-lg);\n  border: 1px solid transparent; cursor: pointer;\n  transition: background 140ms ease, color 140ms ease, border-color 140ms ease, box-shadow 140ms ease;\n  text-decoration: none; white-space: nowrap;\n}\n.sfl-btn-secondary { background: #fff; color: var(--sfl-fg-strong); border-color: var(--sfl-border-dark); box-shadow: var(--sfl-shadow-xs); }\n.sfl-btn-secondary:hover { background: var(--sfl-gray-50); color: var(--sfl-fg-1); text-decoration: none; }\n.sfl-btn.sfl-lg { padding: 12px 20px; font-size: 15px; line-height: 22px; }\n.sfl-btn svg { width: 16px; height: 16px; flex: none; }\n.sfl-add-to-slack {\n  display: inline-flex; align-items: center; gap: 10px;\n  background: #fff; color: #1D1C1D;\n  font: 600 15px/1 var(--sfl-font-primary);\n  border: 1px solid #DDDDDD; border-radius: var(--sfl-r-lg);\n  padding: 12px 18px; box-shadow: var(--sfl-shadow-xs);\n  text-decoration: none; cursor: pointer; white-space: nowrap;\n  transition: background 140ms ease, box-shadow 140ms ease;\n}\n.sfl-add-to-slack:hover { background: #FAFAFA; text-decoration: none; color: #1D1C1D; box-shadow: var(--sfl-shadow-sm); }\n.sfl-add-to-slack svg { width: 20px; height: 20px; flex: none; }\n.sfl-add-to-slack .sfl-a2s-label { letter-spacing: -0.005em; }\n/* Hero */\n.sfl-hero { padding: 86px 0 48px; position: relative; overflow: hidden; }\n.sfl-hero::before {\n  content: \"\"; position: absolute; inset: 0; bottom: auto; height: 640px;\n  background:\n    radial-gradient(ellipse 700px 320px at 85% 10%, rgba(74,21,75,0.06), transparent 70%),\n    linear-gradient(180deg, var(--sfl-violet-25) 0%, rgba(247,243,255,0) 100%);\n  pointer-events: none; z-index: 0;\n}\n.sfl-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 56px; align-items: center; }\n.sfl-hero-copy { max-width: 560px; }\n.sfl-eyebrow {\n  display: inline-flex; align-items: center; gap: 10px;\n  padding: 5px 14px 5px 5px; border-radius: var(--sfl-r-full);\n  background: #fff; border: 1px solid var(--sfl-border-light); box-shadow: var(--sfl-shadow-xs);\n  font-size: 13px; font-weight: 500; color: var(--sfl-fg-strong); margin-bottom: 24px;\nopacity: 0;\n}\n.sfl-eyebrow .sfl-pill {\n  display: inline-flex; align-items: center; gap: 6px;\n  background: var(--sfl-violet-50); color: var(--sfl-violet-700);\n  font-size: 12px; font-weight: 600; padding: 3px 10px 3px 4px; border-radius: var(--sfl-r-full);\n}\n.sfl-eyebrow .sfl-pill .sfl-pill-glyph { width: 14px; height: 14px; }\n.sfl-eyebrow .sfl-arrow { color: var(--sfl-fg-3); width: 14px; height: 14px; }\nh1.sfl-hero-title {\n  font-size: clamp(40px, 5.4vw, 60px);\n  line-height: 1.06; letter-spacing: -0.028em; font-weight: 600; color: var(--sfl-fg-1);\n  margin: 0 0 20px; text-wrap: balance;\n}\nh1.sfl-hero-title i { font-style: normal; color: var(--sfl-violet-600); }\n.sfl-lede { font-size: 18px; line-height: 28px; color: var(--sfl-fg-2); max-width: 540px; margin: 0 0 32px; text-wrap: pretty; }\n.sfl-hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; }\n.sfl-hero-meta { margin-top: 20px; font-size: 13px; color: var(--sfl-fg-3); display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }\n.sfl-hero-meta .sfl-dot { width: 3px; height: 3px; border-radius: 50%; background: var(--sfl-gray-300); }\n.sfl-hero-meta b { color: var(--sfl-fg-strong); font-weight: 600; }\n/* Hero stack */\n.sfl-hero-stack { position: relative; max-width: 560px; margin-left: auto; }\n/* Screenshot frame (macOS-window style) */\n.sfl-ss-frame {\n  background: #fff;\n  border-radius: var(--sfl-r-2xl);\n  overflow: hidden;\n  box-shadow: var(--sfl-shadow-lg);\n}\n.sfl-ss-frame > img { display: block; width: 100%; height: auto; }\n.sfl-ss-frame .ss-titlebar {\n  display: flex; align-items: center; gap: 10px;\n  padding: 10px 14px;\n  background: var(--sfl-slack-aubergine);\n  color: rgba(255,255,255,0.92);\n  font: 600 12.5px/1 'Lato', var(--sfl-font-primary);\n}\n.sfl-ss-frame .ss-titlebar .ss-dots { display: inline-flex; gap: 6px; margin-right: 6px; }\n.sfl-ss-frame .ss-titlebar .ss-dots span { width: 11px; height: 11px; border-radius: 50%; }\n.sfl-ss-frame .ss-titlebar .ss-dots span:nth-child(1) { background: #ED6A5F; }\n.sfl-ss-frame .ss-titlebar .ss-dots span:nth-child(2) { background: #F5BF4F; }\n.sfl-ss-frame .ss-titlebar .ss-dots span:nth-child(3) { background: #61C554; }\n.sfl-ss-frame .ss-titlebar .ws-name { font-weight: 700; }\n/* Hero screenshot composition */\n.sfl-hero-stack .sfl-ss-frame { transform: rotate(-0.6deg); position: relative; z-index: 2; }\n.sfl-hero-stack .sfl-ss-frame--modal {\n  position: absolute; right: -24px; bottom: -28px;\n  width: 280px; z-index: 3;\n  transform: rotate(2deg);\n  filter: drop-shadow(0 18px 36px rgba(16,24,40,0.12));\n}\n/* Sections */\n.sfl-section { padding: 80px 0; }\n.sfl-section-head { max-width: 720px; margin: 0 auto 56px; text-align: center; }\n.sfl-section-eyebrow { display: inline-block; padding: 4px 10px; border-radius: var(--sfl-r-full); background: var(--sfl-violet-25); color: var(--sfl-violet-700); font-size: 12px; font-weight: 600; letter-spacing: 0.02em; margin-bottom: 16px; }\nh2.sfl-section-title { font-size: clamp(30px, 3.8vw, 44px); line-height: 1.12; letter-spacing: -0.024em; font-weight: 600; color: var(--sfl-fg-1); margin: 0 0 16px; text-wrap: balance; }\n.sfl-section-sub { font-size: 17px; line-height: 26px; color: var(--sfl-fg-2); max-width: 620px; margin: 0 auto; text-wrap: pretty; }\n/* How it works */\n.sfl-how-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n.sfl-how-card { background: #fff; border: 1px solid var(--sfl-border-light); border-radius: var(--sfl-r-2xl); overflow: hidden; box-shadow: var(--sfl-shadow-xs); display: flex; flex-direction: column; }\n.sfl-how-card .sfl-preview { background: var(--sfl-bg-grey-50); border-bottom: 1px solid var(--sfl-border-light); padding: 24px 24px 0; height: 260px; overflow: hidden; position: relative; }\n.sfl-how-card .sfl-preview .sfl-ss-mini {\n  background: #fff; border-radius: var(--sfl-r-xl) var(--sfl-r-xl) 0 0;\n  box-shadow: var(--sfl-shadow-sm); overflow: hidden;\n  position: absolute; left: 24px; right: 24px; top: 24px; max-height: 280px;\n}\n.sfl-how-card .sfl-preview .sfl-ss-mini .ss-titlebar { padding: 8px 12px; font-size: 11px; }\n.sfl-how-card .sfl-preview .sfl-ss-mini .ss-titlebar .ss-dots span { width: 8px; height: 8px; }\n.sfl-how-card .sfl-preview .sfl-ss-mini img {\n  display: block; width: 100%; height: auto;\n  object-fit: cover; object-position: top center;\n}\n.sfl-how-card .sfl-num { display: inline-flex; width: 24px; height: 24px; border-radius: 50%; background: var(--sfl-violet-50); color: var(--sfl-violet-700); font: 700 12px/1 var(--sfl-font-primary); align-items: center; justify-content: center; margin-bottom: 10px; }\n.sfl-how-card .sfl-text { padding: 22px 24px 26px; }\n.sfl-how-card h3 { font-size: 17px; font-weight: 600; margin: 0 0 6px; color: var(--sfl-fg-1); }\n.sfl-how-card p { font-size: 14px; line-height: 22px; color: var(--sfl-fg-2); margin: 0; }\n/* Features */\n.sfl-features { background: var(--sfl-bg-grey-50); border-top: 1px solid var(--sfl-border-light); border-bottom: 1px solid var(--sfl-border-light); }\n.sfl-features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--sfl-border-light); border: 1px solid var(--sfl-border-light); border-radius: var(--sfl-r-2xl); overflow: hidden; }\n.sfl-feature { background: #fff; padding: 28px 26px; }\n.sfl-feature .sfl-ic { width: 36px; height: 36px; border-radius: var(--sfl-r-lg); background: var(--sfl-violet-25); color: var(--sfl-violet-600); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 16px; }\n.sfl-feature .sfl-ic svg { width: 18px; height: 18px; }\n.sfl-feature h4 { font-size: 16px; font-weight: 600; color: var(--sfl-fg-1); margin: 0 0 6px; }\n.sfl-feature p { font-size: 14px; line-height: 22px; color: var(--sfl-fg-2); margin: 0; }\n/* Approvals showcase */\n.sfl-showcase { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 64px; align-items: center; }\n.sfl-showcase .sfl-copy h2 { font-size: clamp(28px, 3.2vw, 36px); line-height: 1.15; letter-spacing: -0.02em; font-weight: 600; margin: 0 0 16px; color: var(--sfl-fg-1); text-wrap: balance; }\n.sfl-showcase .sfl-copy p { font-size: 16px; line-height: 26px; color: var(--sfl-fg-2); margin: 0 0 18px; max-width: 480px; }\n.sfl-showcase .sfl-copy .sfl-bullets { list-style: none; padding: 0; margin: 16px 0 0; }\n.sfl-showcase .sfl-copy .sfl-bullets li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 24px; color: var(--sfl-fg-strong); margin-bottom: 10px; }\n.sfl-showcase .sfl-copy .sfl-bullets li svg { width: 18px; height: 18px; color: var(--sfl-violet-600); flex: none; margin-top: 3px; }\n/* Use cases */\n.sfl-uc-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }\n.sfl-uc { background: #fff; border: 1px solid var(--sfl-border-light); border-radius: var(--sfl-r-xl); padding: 22px; box-shadow: var(--sfl-shadow-xs); transition: box-shadow 140ms ease, transform 140ms ease; }\n.sfl-uc:hover { box-shadow: var(--sfl-shadow-md); transform: translateY(-2px); }\n.sfl-uc .sfl-ic { width: 36px; height: 36px; border-radius: var(--sfl-r-lg); background: var(--sfl-violet-25); color: var(--sfl-violet-600); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 16px; }\n.sfl-uc .sfl-ic svg { width: 18px; height: 18px; }\n.sfl-uc h4 { font-size: 15px; font-weight: 600; margin: 0 0 4px; color: var(--sfl-fg-1); }\n.sfl-uc p { font-size: 13px; line-height: 20px; color: var(--sfl-fg-2); margin: 0 0 14px; }\n.sfl-uc .sfl-examples { display: flex; flex-wrap: wrap; gap: 6px; }\n.sfl-uc .sfl-examples .sfl-tag { font-size: 11px; font-weight: 500; padding: 3px 8px; border-radius: var(--sfl-r-full); background: var(--sfl-bg-grey-50); border: 1px solid var(--sfl-border-light); color: var(--sfl-fg-strong); }\n/* Security (dark) */\n.sfl-security { background: var(--sfl-fg-1); color: #fff; }\n.sfl-security .sfl-section-eyebrow { background: rgba(127, 86, 217, 0.18); color: #c9b8ff; }\n.sfl-security h2.sfl-section-title { color: #fff; }\n.sfl-security .sfl-section-sub { color: #C9CDD4; }\n.sfl-sec-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }\n.sfl-sec-card { padding: 28px; border: 1px solid #2A2F38; border-radius: var(--sfl-r-xl); background: rgba(255,255,255,0.02); }\n.sfl-sec-card .sfl-ic { width: 40px; height: 40px; border-radius: var(--sfl-r-lg); background: rgba(127, 86, 217, 0.18); color: #c9b8ff; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 18px; }\n.sfl-sec-card .sfl-ic svg { width: 20px; height: 20px; }\n.sfl-sec-card h4 { font-size: 16px; font-weight: 600; color: #fff; margin: 0 0 6px; }\n.sfl-sec-card p { font-size: 14px; line-height: 22px; color: #C9CDD4; margin: 0; }\n/* Final CTA */\n.sfl-final-cta { padding: 88px 0; text-align: center; position: relative; overflow: hidden; }\n.sfl-final-cta::before { content: \"\"; position: absolute; inset: 0; background: radial-gradient(ellipse 900px 480px at 50% 0%, var(--sfl-violet-25), transparent 70%); pointer-events: none; z-index: 0; }\n.sfl-final-cta > .sfl-container { position: relative; z-index: 1; }\n.sfl-final-cta h2 { max-width: 760px; margin: 0 auto 16px; text-wrap: balance; }\n.sfl-final-cta .sfl-lede { margin: 0 auto 32px; }\n.sfl-final-cta-meta { margin-top: 20px; font-size: 13px; color: var(--sfl-fg-3); display: inline-flex; align-items: center; gap: 10px; justify-content: center; flex-wrap: wrap; }\n.sfl-final-cta-meta .sfl-dot { width: 3px; height: 3px; border-radius: 50%; background: var(--sfl-gray-300); }\n/* Responsive */\n@media (max-width: 1080px) {\n  .sfl-hero-inner { grid-template-columns: 1fr; text-align: center; }\n  .sfl-hero-copy { margin: 0 auto; }\n  .sfl-hero-copy .sfl-lede { margin-left: auto; margin-right: auto; }\n  .sfl-hero-ctas { justify-content: center; }\n  .sfl-hero-meta { justify-content: center; }\n  .sfl-hero-stack { margin: 0 auto; }\n  .sfl-hero-stack .sfl-ss-frame--modal { display: none; }\n  .sfl-uc-grid { grid-template-columns: repeat(2, 1fr); }\n  .sfl-features-grid { grid-template-columns: repeat(2, 1fr); }\n  .sfl-sec-grid { grid-template-columns: repeat(2, 1fr); }\n  .sfl-how-grid { grid-template-columns: 1fr; }\n  .sfl-showcase { grid-template-columns: 1fr; gap: 32px; }\n}\n@media (max-width: 720px) {\n  .sfl-uc-grid, .sfl-features-grid, .sfl-sec-grid { grid-template-columns: 1fr; }\n  .sfl-section { padding: 64px 0; }\n  .sfl-container, .sfl-container-wide { padding: 0 20px; }\n}\n\u003C/style>\u003Clink rel=\"preconnect\" href=\"https://fonts.googleapis.com\">\u003Clink rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin=\"\">\u003Clink href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&amp;family=Lato:wght@400;700;900&amp;display=swap\" rel=\"stylesheet\">",false,1779278257834]