{"id":17521,"date":"2026-09-29T07:23:01","date_gmt":"2026-09-29T07:23:01","guid":{"rendered":"https:\/\/www.onflo.com\/learningcenter\/?p=17521"},"modified":"2026-10-19T07:00:46","modified_gmt":"2026-10-19T07:00:46","slug":"new-in-onflo-october-2026","status":"publish","type":"post","link":"https:\/\/www.onflo.com\/learningcenter\/product-updates\/new-in-onflo-october-2026\/","title":{"rendered":"New in Onflo \u2014 October 2026"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"17521\" class=\"elementor elementor-17521\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e564480 elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default\" data-id=\"e564480\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ac59fc3\" data-id=\"ac59fc3\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4792295 elementor-widget elementor-widget-html\" data-id=\"4792295\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\r\n<style>\r\n\/* Onflo Product Release Roundup \u2014 styles (Onflo Design System tokens) *\/\r\n\/* Fixed light theme \u2014 intentionally does not switch with system dark mode,\r\n     to match the brand's Release Roundup reference design. *\/\r\n    .onflo-prod-rel-sept-26 {\r\n    --navy: #0B3057;\r\n    --navy-deep: #0B3057;\r\n    --blue: #007BC3;\r\n    --sky: #45B6F2;\r\n    --pale: #ADE1FB;\r\n    --pale-bg: color-mix(in srgb, #ADE1FB 40%, #FFFFFF);\r\n    --bg: #F4F6F8;\r\n    --card: #ffffff;\r\n    --border: color-mix(in srgb, #94A3B8 34%, #FFFFFF);\r\n    --ink: #1E293B;\r\n    --ink-soft: #475569;\r\n    --ink-faint: #475569;   \/* text role \u2014 Slate (stone is borders only) *\/\r\n    --stone-line: #94A3B8;\r\n    --good: #166534;\r\n    --teal: #45B6F2;\r\n    --orange: #C2410C;\r\n    --cream: #F4F6F8;\r\n    --ink-deep: #0B3057;\r\n  }\r\n  .onflo-prod-rel-sept-26,\r\n  .onflo-prod-rel-sept-26 * { box-sizing: border-box; }\r\n  .onflo-prod-rel-sept-26 { margin: 0; padding: 0; }\r\n  .onflo-prod-rel-sept-26 {\r\n    background: var(--bg);\r\n    color: var(--ink);\r\n    font-family: 'Inter', -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\r\n    font-size: 15.5px;\r\n    line-height: 1.65;\r\n    -webkit-font-smoothing: antialiased;\r\n  }\r\n  .onflo-prod-rel-sept-26 h1,\r\n  .onflo-prod-rel-sept-26 h2,\r\n  .onflo-prod-rel-sept-26 h3,\r\n  .onflo-prod-rel-sept-26 h4 { font-family: 'Urbanist', sans-serif; color: var(--navy); margin: 0; letter-spacing: -0.01em; }\r\n  .onflo-prod-rel-sept-26 p { margin: 0 0 16px; color: var(--ink); }\r\n  .onflo-prod-rel-sept-26 a { color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px; }\r\n  @media (max-width: 640px) {  .onflo-prod-rel-sept-26 .wrap { padding: 0 18px; }\r\n }\r\n  .onflo-prod-rel-sept-26 img,\r\n  .onflo-prod-rel-sept-26 svg { display: block; }\r\n\r\n  \/* ---------- Top bar ---------- *\/\r\n    .onflo-prod-rel-sept-26 .topbar { background: var(--navy); padding: 14px 0; }\r\n  .onflo-prod-rel-sept-26 .topbar .wrap { display: flex; align-items: center; justify-content: space-between; }\r\n  .onflo-prod-rel-sept-26 .brand { font-family: 'Urbanist', sans-serif; font-weight: 800; font-size: 18px; color: #fff; }\r\n  .onflo-prod-rel-sept-26 .brand span { color: var(--sky); }\r\n  .onflo-prod-rel-sept-26 .topbar .tag { font-size: 12px; color: var(--pale); font-weight: 600; letter-spacing: 0.04em; }\r\n\r\n  \/* ---------- Hero ---------- *\/\r\n    .onflo-prod-rel-sept-26 .hero {\r\n    position: relative;\r\n    overflow: hidden;\r\n    background: linear-gradient(45deg, var(--navy) 0%, #005A8E 60%, var(--blue) 100%);\r\n    background-image:\r\n      linear-gradient(rgba(173,225,251,0.07) 1px, transparent 1px),\r\n      linear-gradient(90deg, rgba(173,225,251,0.07) 1px, transparent 1px),\r\n      linear-gradient(45deg, var(--navy) 0%, #005A8E 60%, var(--blue) 100%);\r\n    background-size: 56px 56px, 56px 56px, 100% 100%;\r\n    color: #fff;\r\n    padding: 48px 0 52px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hero .kicker {\r\n    font-size: 12px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.22em;\r\n    text-transform: uppercase;\r\n    color: var(--sky);\r\n    margin: 0 0 14px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hero h1 {\r\n    color: #ffffff;\r\n    font-weight: 800;\r\n    font-size: clamp(32px, 4.6vw, 48px);\r\n    line-height: 1.08;\r\n    letter-spacing: -0.03em;\r\n    margin: 0 0 16px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hero p {\r\n    font-size: 17px;\r\n    line-height: 1.65;\r\n    color: var(--pale);\r\n    max-width: 660px;\r\n    margin: 0;\r\n  }\r\n\r\n  \/* ---------- Highlights (release-at-a-glance) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .highlights {\r\n    background: var(--bg);\r\n    border-bottom: 1px solid var(--border);\r\n    padding: 40px 0 34px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-head {\r\n    display: flex;\r\n    align-items: baseline;\r\n    justify-content: space-between;\r\n    gap: 16px;\r\n    flex-wrap: wrap;\r\n    margin-bottom: 22px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-eyebrow {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 18px;\r\n    letter-spacing: 0.18em;\r\n    text-transform: uppercase;\r\n    color: var(--blue);\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-heading {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: clamp(20px, 2.6vw, 26px);\r\n    color: var(--navy);\r\n    letter-spacing: -0.01em;\r\n    margin-top: 4px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-webinar-cta {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    background: var(--blue);\r\n    color: #ffffff;\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 700;\r\n    font-size: 14px;\r\n    letter-spacing: 0.01em;\r\n    text-decoration: none;\r\n    padding: 11px 20px;\r\n    border-radius: 999px;\r\n    white-space: nowrap;\r\n    box-shadow: 0 4px 14px rgba(0,123,195,0.28);\r\n    transition: background 0.15s ease, transform 0.15s ease;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-webinar-cta:hover {\r\n    background: var(--navy);\r\n    transform: translateY(-1px);\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-webinar-cta .onflo-icon { font-size: 16px; }\r\n  .onflo-prod-rel-sept-26 .hl-figure-wrap {\r\n    overflow-x: auto;\r\n    -webkit-overflow-scrolling: touch;\r\n    border-radius: 20px;\r\n    box-shadow: 0 8px 30px rgba(16,25,43,0.10);\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-figure-wrap svg {\r\n    display: block;\r\n    width: 100%;\r\n    min-width: 720px;\r\n    height: auto;\r\n    border-radius: 20px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-hint {\r\n    margin: 16px 2px 0;\r\n    font-size: 13px;\r\n    color: var(--ink-faint);\r\n    font-weight: 600;\r\n  }\r\n\r\n  \/* ---------- Past Releases (persistent footer section) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .past-releases {\r\n    background: var(--card);\r\n    border-top: 1px solid var(--border);\r\n    padding: 52px 0 56px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-releases .pr-head { margin-bottom: 24px; }\r\n  .onflo-prod-rel-sept-26 .past-releases h3.subhead { margin-bottom: 6px; }\r\n  .onflo-prod-rel-sept-26 .past-releases .pr-sub { color: var(--ink-faint); font-size: 14px; margin: 0; }\r\n  .onflo-prod-rel-sept-26 .past-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(3, 1fr);\r\n    gap: 16px;\r\n  }\r\n  @media (max-width: 780px) {  .onflo-prod-rel-sept-26 .past-grid { grid-template-columns: 1fr; }\r\n }\r\n  .onflo-prod-rel-sept-26 .past-tile {\r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 14px;\r\n    background: var(--bg);\r\n    border: 1px solid var(--border);\r\n    border-radius: 14px;\r\n    padding: 20px 20px 18px;\r\n    text-decoration: none;\r\n    transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s;\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-tile:hover {\r\n    border-color: var(--blue);\r\n    transform: translateY(-2px);\r\n    box-shadow: 0 8px 20px rgba(11,48,87,0.08);\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-tile .pt-tag {\r\n    align-self: flex-start;\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-size: 10.5px;\r\n    font-weight: 800;\r\n    letter-spacing: 0.08em;\r\n    text-transform: uppercase;\r\n    color: var(--blue);\r\n    background: var(--pale-bg);\r\n    padding: 4px 10px;\r\n    border-radius: 6px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-tile h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 15.5px;\r\n    color: var(--navy);\r\n    line-height: 1.4;\r\n    margin: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-tile .pt-cta {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 6px;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    color: var(--blue);\r\n  }\r\n  .onflo-prod-rel-sept-26 .past-tile .pt-cta svg { width: 13px; height: 13px; }\r\n\r\n  \/* ---------- Tab bar ---------- *\/\r\n    .onflo-prod-rel-sept-26 .tabbar-wrap {\r\n    position: sticky;\r\n    top: 117px;\r\n    z-index: 40;\r\n    background: var(--card);\r\n    border-bottom: 1px solid var(--border);\r\n    box-shadow: 0 2px 10px rgba(11,48,87,0.07);\r\n  }\r\n  .onflo-prod-rel-sept-26 .tabbar-wrap .wrap {\r\n    max-width: none;\r\n    padding: 0 20px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .tabbar {\r\n    display: flex;\r\n    justify-content: safe center;\r\n    gap: 10px;\r\n    overflow-x: auto;\r\n    scrollbar-width: none;\r\n    -ms-overflow-style: none;\r\n  }\r\n  .onflo-prod-rel-sept-26 .tabbar::-webkit-scrollbar { display: none; height: 0; }\r\n  .onflo-prod-rel-sept-26 .tab-btn {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    background: none;\r\n    border: none;\r\n    border-bottom: 3px solid transparent;\r\n    padding: 16px 11px 13px;\r\n    cursor: pointer;\r\n    font-family: 'Inter', sans-serif;\r\n    font-size: 14px;\r\n    font-weight: 600;\r\n    color: var(--ink-faint);\r\n    white-space: nowrap;\r\n    transition: color 0.15s, border-color 0.15s;\r\n  }\r\n  .onflo-prod-rel-sept-26 .tab-btn svg { width: 17px; height: 17px; flex-shrink: 0; }\r\n  @media (max-width: 1900px) and (min-width: 1025px) {  .onflo-prod-rel-sept-26 .tabbar { gap: 14px; }\r\n  .onflo-prod-rel-sept-26 .tab-btn { padding: 16px 6px 13px; font-size: 12.5px; gap: 5px; }\r\n  .onflo-prod-rel-sept-26 .tab-btn svg { width: 15px; height: 15px; }\r\n  .onflo-prod-rel-sept-26 .tabbar .tab-btn .onflo-icon { font-size: 15px; }\r\n  }\r\n  .onflo-prod-rel-sept-26 .tab-btn:hover { color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .tab-btn.is-active {\r\n    color: var(--navy);\r\n    font-weight: 700;\r\n    border-bottom-color: var(--blue);\r\n  }\r\n\r\n  \/* ---------- Panels ---------- *\/\r\n    .onflo-prod-rel-sept-26 .panel { display: none; padding: 52px 0 72px; }\r\n  .onflo-prod-rel-sept-26 .panel.is-active { display: block; }\r\n  .onflo-prod-rel-sept-26 .badge-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 16px; }\r\n  .onflo-prod-rel-sept-26 .badge {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 11px;\r\n    letter-spacing: 0.1em;\r\n    text-transform: uppercase;\r\n    padding: 5px 14px;\r\n    border-radius: 6px;\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 7px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .badge.navy { background: var(--navy); color: var(--pale); }\r\n  .onflo-prod-rel-sept-26 .badge.blue { background: var(--pale-bg); color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .badge.neutral { background: var(--bg); color: var(--ink-soft); border: 1px solid var(--border); }\r\n  .onflo-prod-rel-sept-26 .badge .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--sky); }\r\n  .onflo-prod-rel-sept-26 .panel h2.title {\r\n    font-weight: 800;\r\n    font-size: 32px;\r\n    letter-spacing: -0.02em;\r\n    color: var(--navy);\r\n    margin: 0 0 18px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .panel h2.title.tight { margin-bottom: 8px; }\r\n  .onflo-prod-rel-sept-26 .panel p.subheading {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 18px;\r\n    letter-spacing: -0.01em;\r\n    color: var(--blue);\r\n    margin: 0 0 16px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .panel p.lead { font-size: 16px; line-height: 1.75; color: var(--ink-soft); max-width: 720px; }\r\n  .onflo-prod-rel-sept-26 h3.subhead {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 22px;\r\n    color: var(--navy);\r\n    margin: 0 0 16px;\r\n    letter-spacing: -0.01em;\r\n  }\r\n  .onflo-prod-rel-sept-26 p.overview-text {\r\n    font-size: 15px;\r\n    line-height: 1.75;\r\n    color: var(--ink);\r\n    max-width: none;\r\n  }\r\n\r\n  \/* ---------- Feature grid (What you get) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .feature-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, 1fr);\r\n    gap: 16px;\r\n    margin-top: 20px;\r\n  }\r\n  @media (max-width: 620px) {  .onflo-prod-rel-sept-26 .feature-grid { grid-template-columns: 1fr; }\r\n  }\r\n  .onflo-prod-rel-sept-26 .feature-card {\r\n    background: var(--card);\r\n    border: 1px solid var(--border);\r\n    border-left: 3px solid var(--blue);\r\n    border-radius: 6px;\r\n    padding: 22px 24px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .feature-card h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-size: 16px;\r\n    font-weight: 800;\r\n    color: var(--navy);\r\n    margin: 0 0 8px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .feature-card p {\r\n    color: var(--ink-soft);\r\n    font-size: 14.5px;\r\n    line-height: 1.6;\r\n    margin: 0;\r\n  }\r\n\r\n  \/* divider *\/\r\n    .onflo-prod-rel-sept-26 .divider { display: flex; align-items: center; gap: 16px; margin: 48px 0 8px; }\r\n  .onflo-prod-rel-sept-26 .divider .line { flex-grow: 1; height: 1px; background: var(--border); }\r\n  .onflo-prod-rel-sept-26 .divider span.label {\r\n    font-size: 11px; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase;\r\n    color: var(--ink-faint); font-family: 'Urbanist', sans-serif; white-space: nowrap;\r\n  }\r\n\r\n  \/* Dive Deeper collapsibles *\/\r\n    .onflo-prod-rel-sept-26 .dive-card {\r\n    background: var(--card);\r\n    border: 1px solid var(--border);\r\n    border-radius: 14px;\r\n    margin-bottom: 14px;\r\n    overflow: hidden;\r\n  }\r\n  .onflo-prod-rel-sept-26 .dive-card summary {\r\n    list-style: none;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: space-between;\r\n    gap: 16px;\r\n    padding: 20px 24px;\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 17px;\r\n    color: var(--navy);\r\n  }\r\n  .onflo-prod-rel-sept-26 .dive-card summary::-webkit-details-marker { display: none; }\r\n  .onflo-prod-rel-sept-26 .dive-card summary .chev {\r\n    width: 22px; height: 22px; flex-shrink: 0;\r\n    border-radius: 50%;\r\n    background: var(--pale-bg);\r\n    color: var(--blue);\r\n    display: flex; align-items: center; justify-content: center;\r\n    transition: transform 0.2s ease;\r\n  }\r\n  .onflo-prod-rel-sept-26 .dive-card[open] summary { border-bottom: 1px solid var(--border); }\r\n  .onflo-prod-rel-sept-26 .dive-card[open] summary .chev { transform: rotate(180deg); }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body { padding: 20px 24px 26px; }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body h4 {\r\n    font-size: 14.5px; font-weight: 700; color: var(--navy); margin: 20px 0 10px;\r\n    text-transform: uppercase; letter-spacing: 0.04em;\r\n  }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body h4:first-child { margin-top: 0; }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body ul { margin: 0 0 6px; padding-left: 20px; }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body li { margin-bottom: 9px; color: var(--ink); font-size: 15px; }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body li::marker { color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .dive-card .dive-body p { font-size: 15px; color: var(--ink); }\r\n  .onflo-prod-rel-sept-26 .role-callout {\r\n    background: var(--bg);\r\n    border: 1px solid var(--border);\r\n    border-radius: 12px;\r\n    padding: 18px 20px;\r\n    margin: 6px 0 18px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .role-callout h5 {\r\n    margin: 0 0 10px; font-size: 13px; font-weight: 800; color: var(--navy);\r\n    font-family: 'Urbanist', sans-serif; text-transform: uppercase; letter-spacing: 0.04em;\r\n  }\r\n  .onflo-prod-rel-sept-26 .role-callout ul { margin: 0; }\r\n  .onflo-prod-rel-sept-26 .role-callout li { color: var(--ink); }\r\n  .onflo-prod-rel-sept-26 .prep-highlight {\r\n    background: var(--card);\r\n    border: 1px solid var(--border);\r\n    border-left: 3px solid var(--blue);\r\n    border-radius: 6px;\r\n    padding: 18px 22px;\r\n    font-size: 15px;\r\n    line-height: 1.7;\r\n    color: var(--ink);\r\n    margin-bottom: 20px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .prep-highlight strong { color: var(--navy); }\r\n  .onflo-prod-rel-sept-26 .num-row {\r\n    display: flex; align-items: flex-start; gap: 16px;\r\n    background: var(--card); padding: 16px 20px; border-radius: 12px;\r\n    border: 1px solid var(--border); margin-bottom: 10px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .num-badge {\r\n    width: 28px; height: 28px; border-radius: 9px;\r\n    background: var(--navy); color: var(--pale);\r\n    display: flex; align-items: center; justify-content: center;\r\n    font-family: 'Urbanist', sans-serif; font-size: 14px; font-weight: 800; flex-shrink: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .num-row p { margin: 0; font-size: 14.5px; color: var(--ink); }\r\n\r\n  \/* tables *\/\r\n    .onflo-prod-rel-sept-26 .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-top: 4px; }\r\n  .onflo-prod-rel-sept-26 table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 460px; }\r\n  .onflo-prod-rel-sept-26 th,\r\n  .onflo-prod-rel-sept-26 td { text-align: left; padding: 11px 14px; border-bottom: 1px solid var(--border); vertical-align: top; color: var(--ink); }\r\n  .onflo-prod-rel-sept-26 th { background: var(--pale-bg); color: var(--navy); font-weight: 700; font-size: 12.5px; font-family: 'Urbanist', sans-serif; }\r\n  .onflo-prod-rel-sept-26 tr:last-child td { border-bottom: none; }\r\n  .onflo-prod-rel-sept-26 tbody tr:nth-child(odd) { background: rgba(69,182,242,0.045); }\r\n  .onflo-prod-rel-sept-26 td em { color: var(--ink-faint); font-style: italic; }\r\n\r\n  \/* placeholder panels *\/\r\n    .onflo-prod-rel-sept-26 .placeholder-card {\r\n    background: var(--card);\r\n    border: 1px dashed var(--border);\r\n    border-radius: 14px;\r\n    padding: 32px 28px;\r\n    max-width: 640px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .placeholder-card h2 { font-size: 24px; }\r\n  .onflo-prod-rel-sept-26 .placeholder-card p.desc { color: var(--ink-soft); margin-bottom: 0; }\r\n  .onflo-prod-rel-sept-26 .placeholder-card p.soon {\r\n    font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;\r\n    color: var(--ink-faint); margin: 14px 0 0;\r\n  }\r\n\r\n  \/* closing *\/\r\n    .onflo-prod-rel-sept-26 .closing { background: var(--navy); color: #eaf1f8; padding: 44px 0; }\r\n  .onflo-prod-rel-sept-26 .closing p { color: #c9dcec; max-width: 640px; font-size: 15px; margin: 0; }\r\n  .onflo-prod-rel-sept-26 .closing strong { color: var(--sky); }\r\n  .onflo-prod-rel-sept-26 footer { background: var(--navy-deep); color: var(--pale); padding: 18px 0; font-size: 12px; text-align: center; }\r\n\r\n  \/* cross-panel links *\/\r\n    .onflo-prod-rel-sept-26 .tab-link {\r\n    color: var(--blue);\r\n    font-weight: 700;\r\n    text-decoration: none;\r\n    border-bottom: 1.5px solid var(--pale);\r\n    cursor: pointer;\r\n  }\r\n  .onflo-prod-rel-sept-26 .tab-link:hover { border-bottom-color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .see-also {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    background: var(--pale-bg);\r\n    border: 1px solid var(--pale);\r\n    border-radius: 8px;\r\n    padding: 9px 16px;\r\n    font-size: 14px;\r\n    font-weight: 600;\r\n    color: var(--navy);\r\n    margin-top: 6px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .see-also svg { width: 15px; height: 15px; flex-shrink: 0; color: var(--blue); }\r\n\r\n  \/* ---------- Value band (\"What it means for your district\") ---------- *\/\r\n    .onflo-prod-rel-sept-26 .value-band {\r\n    position: relative;\r\n    overflow: hidden;\r\n    background: linear-gradient(45deg, var(--navy) 0%, var(--blue) 100%);\r\n    border-radius: 18px;\r\n    padding: 40px 32px 34px;\r\n    margin-top: 20px;\r\n    background-image:\r\n      radial-gradient(circle at 92% 8%, rgba(69,182,242,0.16) 0%, transparent 45%),\r\n      linear-gradient(45deg, var(--navy) 0%, var(--blue) 100%);\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-band .vb-head {\r\n    display: flex;\r\n    align-items: baseline;\r\n    justify-content: space-between;\r\n    gap: 16px;\r\n    flex-wrap: wrap;\r\n    margin-bottom: 26px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-band .vb-eyebrow {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 11px;\r\n    letter-spacing: 0.16em;\r\n    text-transform: uppercase;\r\n    color: var(--sky);\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-band .vb-count {\r\n    font-size: 13px;\r\n    color: var(--pale);\r\n    font-weight: 600;\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-list {\r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 2px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-row {\r\n    display: grid;\r\n    grid-template-columns: 52px 1fr;\r\n    gap: 20px;\r\n    align-items: flex-start;\r\n    padding: 20px 4px;\r\n    border-top: 1px solid rgba(255,255,255,0.12);\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-row:first-child { border-top: none; }\r\n  .onflo-prod-rel-sept-26 .value-row .v-icon {\r\n    width: 52px;\r\n    height: 52px;\r\n    border-radius: 13px;\r\n    background: rgba(255,255,255,0.08);\r\n    border: 1px solid rgba(173,225,251,0.25);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    color: var(--sky);\r\n    flex-shrink: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-row .v-icon svg { width: 24px; height: 24px; }\r\n  .onflo-prod-rel-sept-26 .value-row h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 17px;\r\n    color: #fff;\r\n    margin: 4px 0 6px;\r\n    letter-spacing: -0.01em;\r\n  }\r\n  .onflo-prod-rel-sept-26 .value-row p {\r\n    color: var(--pale);\r\n    font-size: 15px;\r\n    line-height: 1.65;\r\n    margin: 0;\r\n  }\r\n  @media (max-width: 560px) {  .onflo-prod-rel-sept-26 .value-band { padding: 30px 20px 26px; border-radius: 14px; }\r\n  .onflo-prod-rel-sept-26 .value-row { grid-template-columns: 42px 1fr; gap: 14px; padding: 16px 2px; }\r\n  .onflo-prod-rel-sept-26 .value-row .v-icon { width: 42px; height: 42px; border-radius: 11px; }\r\n  .onflo-prod-rel-sept-26 .value-row .v-icon svg { width: 20px; height: 20px; }\r\n  }\r\n\r\n  \/* compact checklist variant, for shorter one-line impact statements *\/\r\n    .onflo-prod-rel-sept-26 .value-checklist {\r\n    display: grid;\r\n    grid-template-columns: 1fr 1fr;\r\n    gap: 16px 28px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .vc-item { display: flex; align-items: flex-start; gap: 12px; }\r\n  .onflo-prod-rel-sept-26 .vc-icon {\r\n    width: 26px; height: 26px; border-radius: 50%; flex-shrink: 0;\r\n    background: rgba(255,255,255,0.1);\r\n    border: 1px solid rgba(173,225,251,0.3);\r\n    display: flex; align-items: center; justify-content: center;\r\n    color: var(--sky); margin-top: 1px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .vc-icon svg { width: 13px; height: 13px; }\r\n  .onflo-prod-rel-sept-26 .vc-item p { margin: 0; color: var(--pale); font-size: 15px; line-height: 1.55; padding-top: 3px; }\r\n  @media (max-width: 620px) {  .onflo-prod-rel-sept-26 .value-checklist { grid-template-columns: 1fr; }\r\n  }\r\n\r\n  \/* ---------- Capability groups (\"What you get with Workflow 2.0\") ---------- *\/\r\n    .onflo-prod-rel-sept-26 .cap-group-head {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 12px;\r\n    margin: 30px 0 16px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group-head .cgh-icon {\r\n    width: 32px; height: 32px; border-radius: 9px;\r\n    display: flex; align-items: center; justify-content: center;\r\n    flex-shrink: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group-head .cgh-icon svg { width: 17px; height: 17px; }\r\n  .onflo-prod-rel-sept-26 .cap-group.build .cgh-icon { background: var(--pale-bg); color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .cap-group.monitor .cgh-icon { background: color-mix(in srgb, #CAE0D1 55%, #FFFFFF); color: var(--good); }\r\n  .onflo-prod-rel-sept-26 .cap-group-head h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 13px;\r\n    text-transform: uppercase;\r\n    letter-spacing: 0.1em;\r\n    color: var(--navy);\r\n    margin: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group-head .cgh-sub {\r\n    font-size: 13px;\r\n    color: var(--ink-faint);\r\n    font-weight: 500;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group-head .cgh-line {\r\n    flex-grow: 1;\r\n    height: 1px;\r\n    background: var(--border);\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(3, 1fr);\r\n    gap: 14px;\r\n  }\r\n  @media (max-width: 860px) {  .onflo-prod-rel-sept-26 .cap-grid { grid-template-columns: repeat(2, 1fr); }\r\n }\r\n  @media (max-width: 560px) {  .onflo-prod-rel-sept-26 .cap-grid { grid-template-columns: 1fr; }\r\n }\r\n  .onflo-prod-rel-sept-26 .cap-grid.two-col { grid-template-columns: repeat(2, 1fr); }\r\n  @media (max-width: 620px) {  .onflo-prod-rel-sept-26 .cap-grid.two-col { grid-template-columns: 1fr; }\r\n }\r\n  .onflo-prod-rel-sept-26 .cap-card {\r\n    background: var(--card);\r\n    border: 1px solid var(--border);\r\n    border-top: 3px solid var(--blue);\r\n    border-radius: 12px;\r\n    padding: 22px 20px 20px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group.monitor .cap-card { border-top-color: var(--good); }\r\n  .onflo-prod-rel-sept-26 .cap-card .cc-icon {\r\n    width: 38px; height: 38px; border-radius: 10px;\r\n    display: flex; align-items: center; justify-content: center;\r\n    background: var(--pale-bg); color: var(--blue);\r\n    margin-bottom: 14px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group.monitor .cap-card .cc-icon { background: color-mix(in srgb, #CAE0D1 55%, #FFFFFF); color: var(--good); }\r\n  .onflo-prod-rel-sept-26 .cap-card .cc-icon svg { width: 19px; height: 19px; }\r\n  .onflo-prod-rel-sept-26 .cap-card h5 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 15.5px;\r\n    color: var(--navy);\r\n    margin: 0 0 4px;\r\n    letter-spacing: -0.01em;\r\n    line-height: 1.3;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-card .cc-kicker {\r\n    display: block;\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-size: 15.5px;\r\n    font-weight: 800;\r\n    letter-spacing: -0.01em;\r\n    text-transform: none;\r\n    color: var(--navy);\r\n    margin-bottom: 6px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .cap-group.monitor .cap-card .cc-kicker { color: var(--navy); }\r\n  .onflo-prod-rel-sept-26 .cap-card p {\r\n    font-size: 13.5px;\r\n    line-height: 1.6;\r\n    color: var(--ink-soft);\r\n    margin: 0;\r\n  }\r\n\r\n  \/* ---------- Shorter capability template ---------- *\/\r\n    .onflo-prod-rel-sept-26 .overview-hook {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 19px;\r\n    line-height: 1.45;\r\n    color: var(--navy);\r\n    margin: 0 0 14px;\r\n    max-width: none;\r\n  }\r\n  .onflo-prod-rel-sept-26 .benefit-band {\r\n    background: var(--pale-bg);\r\n    border: 1px solid var(--pale);\r\n    border-radius: 16px;\r\n    padding: 6px 22px;\r\n    margin-top: 6px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .benefit-row {\r\n    display: flex;\r\n    gap: 14px;\r\n    align-items: flex-start;\r\n    padding: 16px 2px;\r\n    border-top: 1px solid var(--pale);\r\n  }\r\n  .onflo-prod-rel-sept-26 .benefit-row:first-child { border-top: none; }\r\n  .onflo-prod-rel-sept-26 .benefit-row .b-icon {\r\n    width: 28px; height: 28px; border-radius: 50%;\r\n    background: #fff; border: 1.5px solid var(--blue); color: var(--blue);\r\n    display: flex; align-items: center; justify-content: center;\r\n    flex-shrink: 0; margin-top: 1px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .benefit-row .b-icon svg { width: 14px; height: 14px; }\r\n  .onflo-prod-rel-sept-26 .benefit-row p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.6; padding-top: 3px; }\r\n  .onflo-prod-rel-sept-26 .faq-list { margin-top: 4px; }\r\n  .onflo-prod-rel-sept-26 .faq-item { padding: 17px 0; border-top: 1px solid var(--border); }\r\n  .onflo-prod-rel-sept-26 .faq-item:first-child { border-top: none; }\r\n  .onflo-prod-rel-sept-26 .faq-item h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 15.5px;\r\n    color: var(--navy);\r\n    margin: 0 0 6px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .faq-item p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.65; }\r\n\r\n  \/* ---------- Resource card (downloadable flyer) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .resource-card {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 18px;\r\n    margin-top: 40px;\r\n    padding: 22px 26px;\r\n    background: var(--pale-bg);\r\n    border: 1px solid var(--pale);\r\n    border-radius: 16px;\r\n    text-decoration: none;\r\n    transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s;\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card:hover {\r\n    border-color: var(--blue);\r\n    transform: translateY(-2px);\r\n    box-shadow: 0 8px 22px rgba(11,48,87,0.10);\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-icon {\r\n    width: 46px; height: 46px; border-radius: 12px;\r\n    background: var(--navy); color: #fff;\r\n    display: flex; align-items: center; justify-content: center;\r\n    flex-shrink: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-icon svg { width: 22px; height: 22px; }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-text { flex: 1; min-width: 0; }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-eyebrow {\r\n    display: block;\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-size: 11px;\r\n    font-weight: 800;\r\n    letter-spacing: 0.08em;\r\n    text-transform: uppercase;\r\n    color: var(--blue);\r\n    margin-bottom: 3px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card h4 {\r\n    font-family: 'Urbanist', sans-serif;\r\n    font-weight: 800;\r\n    font-size: 16px;\r\n    color: var(--navy);\r\n    margin: 0 0 3px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card p { margin: 0; font-size: 13.5px; color: var(--ink-faint); }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-cta {\r\n    flex-shrink: 0;\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 6px;\r\n    font-size: 13.5px;\r\n    font-weight: 700;\r\n    color: var(--blue);\r\n    white-space: nowrap;\r\n  }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-cta svg { width: 14px; height: 14px; }\r\n  @media (max-width: 560px) {  .onflo-prod-rel-sept-26 .resource-card { flex-direction: column; align-items: flex-start; gap: 14px; }\r\n  .onflo-prod-rel-sept-26 .resource-card .rc-cta { margin-left: 0; }\r\n  }\r\n  .onflo-prod-rel-sept-26 .feature-block + .feature-block {\r\n    margin-top: 8px;\r\n    padding-top: 34px;\r\n    border-top: 1px solid var(--border);\r\n  }\r\n\r\n  \/* ---------- Embedded media (illustrations, demo clips) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .media-card {\r\n    margin: 20px 0 28px;\r\n    border-radius: 14px;\r\n    overflow: hidden;\r\n    border: 1px solid var(--border);\r\n    background: var(--card);\r\n    box-shadow: 0 2px 10px rgba(11,48,87,0.06);\r\n  }\r\n  .onflo-prod-rel-sept-26 .media-card img,\r\n  .onflo-prod-rel-sept-26 .media-card video {\r\n    width: 100%;\r\n    display: block;\r\n    background: var(--bg);\r\n  }\r\n  .onflo-prod-rel-sept-26 .media-caption {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    padding: 11px 16px;\r\n    font-size: 12.5px;\r\n    color: var(--ink-faint);\r\n    border-top: 1px solid var(--border);\r\n    background: var(--bg);\r\n  }\r\n  .onflo-prod-rel-sept-26 .media-caption .m-dot {\r\n    width: 6px; height: 6px; border-radius: 50%;\r\n    background: var(--blue); flex-shrink: 0;\r\n  }\r\n  .onflo-prod-rel-sept-26 .media-card.compact { max-width: 640px; }\r\n\r\n  \/* ---------- Onflo iconography (Material Symbols Rounded, Fill=1) ---------- *\/\r\n    .onflo-prod-rel-sept-26 .onflo-icon {\r\n    font-family: 'Material Symbols Rounded' !important;\r\n    font-weight: normal !important; font-style: normal !important; line-height: 1;\r\n    letter-spacing: normal; text-transform: none; white-space: nowrap;\r\n    direction: ltr; display: inline-block; flex-shrink: 0;\r\n    -webkit-font-smoothing: antialiased; user-select: none;\r\n    font-size: 20px;\r\n    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;\r\n  }\r\n  .onflo-prod-rel-sept-26 .brand-logo { height: 30px; width: auto; }\r\n  .onflo-prod-rel-sept-26 .tab-btn .onflo-icon { font-size: 20px; }\r\n  .onflo-prod-rel-sept-26 .cc-icon .onflo-icon { font-size: 20px; }\r\n  .onflo-prod-rel-sept-26 .cgh-icon .onflo-icon { font-size: 18px; }\r\n  .onflo-prod-rel-sept-26 .v-icon .onflo-icon { font-size: 26px; font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24; }\r\n  .onflo-prod-rel-sept-26 .vc-icon .onflo-icon,\r\n  .onflo-prod-rel-sept-26 .b-icon .onflo-icon { font-size: 16px; }\r\n  .onflo-prod-rel-sept-26 .rc-icon .onflo-icon { font-size: 24px; }\r\n  .onflo-prod-rel-sept-26 .rc-cta .onflo-icon,\r\n  .onflo-prod-rel-sept-26 .pt-cta .onflo-icon { font-size: 16px; }\r\n  .onflo-prod-rel-sept-26 .chev .onflo-icon { font-size: 16px; }\r\n\r\n  \/* ---------- Highlights: responsive card fallback ---------- *\/\r\n    .onflo-prod-rel-sept-26 .hl-mobile { display: none; }\r\n  .onflo-prod-rel-sept-26 .hl-group-label {\r\n    font-family: 'Urbanist', sans-serif; font-weight: 800; font-size: 11.5px;\r\n    letter-spacing: 0.16em; text-transform: uppercase; margin: 0 0 12px;\r\n    display: flex; align-items: center; gap: 10px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-group-label::after { content: \"\"; flex: 1; height: 2px; border-radius: 1px; background: currentColor; opacity: 0.35; }\r\n  .onflo-prod-rel-sept-26 .hl-group-label.foundation { color: var(--blue); }\r\n  .onflo-prod-rel-sept-26 .hl-group-label.expanded { color: #70447A; }\r\n  .onflo-prod-rel-sept-26 .hl-group + .hl-group { margin-top: 26px; }\r\n  .onflo-prod-rel-sept-26 .hl-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }\r\n  .onflo-prod-rel-sept-26 .hl-card {\r\n    position: relative; display: flex; gap: 14px; align-items: flex-start;\r\n    background: var(--card); border: 1px solid var(--border); border-radius: 14px;\r\n    padding: 16px 16px 16px 14px; text-align: left; width: 100%;\r\n    font-family: 'Inter', sans-serif; cursor: pointer;\r\n    transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-card:hover { border-color: var(--blue); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(11,48,87,0.08); }\r\n  .onflo-prod-rel-sept-26 .hl-card .hc-icon {\r\n    width: 44px; height: 44px; border-radius: 12px; flex-shrink: 0;\r\n    display: flex; align-items: center; justify-content: center; color: #fff;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-card .hc-icon .onflo-icon { font-size: 24px; color: #fff; }\r\n  .onflo-prod-rel-sept-26 .hl-card.blue .hc-icon { background: #007BC3; }\r\n  .onflo-prod-rel-sept-26 .hl-card.green .hc-icon { background: #166534; }\r\n  .onflo-prod-rel-sept-26 .hl-card.plum .hc-icon { background: #70447A; }\r\n  .onflo-prod-rel-sept-26 .hl-card h4 {\r\n    font-family: 'Urbanist', sans-serif; font-weight: 800; font-size: 15.5px;\r\n    color: var(--navy); margin: 2px 0 4px; letter-spacing: -0.01em;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-card p { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--ink-soft); }\r\n  .onflo-prod-rel-sept-26 .hl-card .hc-num {\r\n    position: absolute; top: 10px; right: 12px;\r\n    font-family: 'Urbanist', sans-serif; font-weight: 800; font-size: 12px; color: var(--ink-faint);\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-card .hc-beta {\r\n    display: inline-block; margin-left: 6px; vertical-align: 2px;\r\n    font-family: 'Urbanist', sans-serif; font-size: 9.5px; font-weight: 800; letter-spacing: 0.08em;\r\n    background: var(--navy); color: #fff; border-radius: 999px; padding: 2px 7px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-summary {\r\n    margin-top: 22px; background: var(--navy); border-radius: 18px; padding: 24px 22px;\r\n    display: flex; flex-direction: column; gap: 16px;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-summary .hs-head { display: flex; align-items: flex-start; gap: 14px; }\r\n  .onflo-prod-rel-sept-26 .hl-summary .hs-star {\r\n    width: 40px; height: 40px; border-radius: 50%; background: var(--sky); flex-shrink: 0;\r\n    display: flex; align-items: center; justify-content: center;\r\n  }\r\n  .onflo-prod-rel-sept-26 .hl-summary .hs-star .onflo-icon { font-size: 22px; color: var(--navy); }\r\n  .onflo-prod-rel-sept-26 .hl-summary h4 { font-family: 'Urbanist', sans-serif; font-weight: 800; font-size: 19px; color: #fff; margin: 0 0 4px; }\r\n  .onflo-prod-rel-sept-26 .hl-summary .hs-head p { margin: 0; color: var(--pale); font-size: 14px; line-height: 1.5; }\r\n  .onflo-prod-rel-sept-26 .hl-summary ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 20px; }\r\n  .onflo-prod-rel-sept-26 .hl-summary li { display: flex; gap: 9px; align-items: flex-start; color: var(--pale); font-size: 13.5px; line-height: 1.45; }\r\n  .onflo-prod-rel-sept-26 .hl-summary li .onflo-icon { font-size: 17px; color: var(--sky); flex-shrink: 0; }\r\n\r\n  @media (max-width: 1024px) {  .onflo-prod-rel-sept-26 .hl-figure-wrap { display: none; }\r\n  .onflo-prod-rel-sept-26 .hl-mobile { display: block; }\r\n  }\r\n  @media (max-width: 620px) {  .onflo-prod-rel-sept-26 .hl-cards { grid-template-columns: 1fr; }\r\n  .onflo-prod-rel-sept-26 .hl-summary ul { grid-template-columns: 1fr; }\r\n  .onflo-prod-rel-sept-26 .hl-summary { padding: 20px 18px; border-radius: 14px; }\r\n  }\r\n\r\n  \/* ================= RESPONSIVE: tablet & mobile ================= *\/\r\n\r\n  \/* ---- Tablet (\u22641024px) ---- *\/\r\n    @media (max-width: 1024px) {\r\n    .onflo-prod-rel-sept-26 { font-size: 15px; }\r\n    .hero { padding: 40px 0 44px; }\r\n    .panel { padding: 40px 0 56px; }\r\n    .panel h2.title { font-size: 28px; }\r\n    h3.subhead { font-size: 20px; }\r\n    .past-grid { grid-template-columns: repeat(2, 1fr); }\r\n    .cap-grid.two-col { grid-template-columns: repeat(2, 1fr); }\r\n    .value-band { padding: 32px 26px 28px; }\r\n    .tab-btn { padding: 14px 12px 11px; font-size: 13.5px; }\r\n  }\r\n\r\n  \/* ---- Small tablet \/ large phone (\u2264780px) ---- *\/\r\n    @media (max-width: 780px) {\r\n    .topbar .wrap { gap: 12px; }\r\n    .topbar .tag { font-size: 11px; }\r\n    .brand-logo { height: 26px; }\r\n    .hero h1 { font-size: clamp(28px, 6vw, 38px); }\r\n    .hero p { font-size: 16px; }\r\n    .highlights { padding: 32px 0 28px; }\r\n    .hl-figure-wrap svg { min-width: 680px; }\r\n    .past-grid { grid-template-columns: 1fr; }\r\n    .dive-card summary { padding: 16px 18px; font-size: 16px; }\r\n    .dive-card .dive-body { padding: 16px 18px 22px; }\r\n    .media-card.compact { max-width: 100%; }\r\n  }\r\n\r\n  \/* ---- Phone (\u2264640px) ---- *\/\r\n    @media (max-width: 640px) {\r\n    .onflo-prod-rel-sept-26 { font-size: 15px; line-height: 1.6; }\r\n    .hero { padding: 32px 0 36px; }\r\n    .hero .kicker { font-size: 11px; letter-spacing: 0.16em; }\r\n    .panel { padding: 32px 0 48px; }\r\n    .panel h2.title { font-size: 24px; line-height: 1.2; }\r\n    .panel p.subheading { font-size: 16px; }\r\n    .panel p.lead, p.overview-text { font-size: 15px; }\r\n    h3.subhead { font-size: 19px; }\r\n    h3.subhead[style] { margin-top: 28px !important; }\r\n    .overview-hook { font-size: 17px; }\r\n\r\n    .tabbar { gap: 8px; scroll-snap-type: x proximity; }\r\n    .tab-btn { padding: 13px 10px 10px; font-size: 13px; gap: 7px; scroll-snap-align: start; }\r\n    .tabbar-wrap .wrap { padding-right: 0; }\r\n\r\n    .badge-row { gap: 8px; }\r\n    .badge { font-size: 10px; padding: 4px 10px; }\r\n\r\n    .hl-figure-wrap { border-radius: 14px; }\r\n    .hl-figure-wrap svg { min-width: 620px; border-radius: 14px; }\r\n    .hl-hint { font-size: 12px; }\r\n\r\n    .feature-card { padding: 18px 18px; }\r\n    .cap-card { padding: 18px 16px 16px; }\r\n    .cap-group-head { flex-wrap: wrap; gap: 10px; margin: 24px 0 14px; }\r\n    .cap-group-head .cgh-sub { flex-basis: 100%; }\r\n    .cap-group-head .cgh-line { display: none; }\r\n\r\n    .benefit-band { padding: 4px 16px; border-radius: 14px; }\r\n    .benefit-row p, .vc-item p { font-size: 14.5px; }\r\n    .num-row { padding: 14px 16px; gap: 12px; }\r\n    .role-callout { padding: 16px 16px; }\r\n    .prep-highlight { padding: 16px 16px; font-size: 14.5px; }\r\n\r\n    .divider { margin: 36px 0 6px; }\r\n    .divider .label { font-size: 10px; letter-spacing: 0.12em; }\r\n\r\n    table { font-size: 13px; min-width: 420px; }\r\n    th, td { padding: 9px 11px; }\r\n\r\n    .resource-card { padding: 18px 18px; margin-top: 30px; }\r\n    .resource-card h4 { font-size: 15px; }\r\n\r\n    .past-releases { padding: 40px 0 44px; }\r\n    .closing { padding: 34px 0; }\r\n  }\r\n\r\n  \/* ---- Small phone (\u2264420px) ---- *\/\r\n    @media (max-width: 420px) {\r\n    .hero h1 { font-size: 26px; }\r\n    .panel h2.title { font-size: 22px; }\r\n    .badge { font-size: 9.5px; }\r\n    .resource-card { flex-direction: column; align-items: flex-start; }\r\n    .resource-card .rc-cta { margin-left: 0; }\r\n    .hl-figure-wrap svg { min-width: 560px; }\r\n  }\r\n\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n<div class=\"onflo-prod-rel-sept-26\">\r\n\r\n<section class=\"highlights\">\r\n  <div class=\"wrap\">\r\n    <div class=\"hl-head\">\r\n      <div>\r\n        <span class=\"hl-eyebrow\">October, 2026: Release Highlights<\/span>\r\n      <\/div>\r\n      <a class=\"hl-webinar-cta\" href=\"https:\/\/onflo.zoom.us\/rec\/share\/sYwWXZl5RMsuoj7Kw16tdsr4SN1vgsuRGjGnW0kGIITuz1-CC1OQajUlmQZfjNmX.WA9x0Y9HnvJq08Wt\" target=\"_blank\" rel=\"noopener\">\r\n        View Release Webinar\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">arrow_forward<\/span>\r\n      <\/a>\r\n    <\/div>\r\n    <div class=\"hl-figure-wrap\">\r\n        <svg id=\"oprs26-hlSvg\" viewBox=\"0 0 1430 676\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"Onflo October release highlights: architectural foundation, expanded capabilities, and a truly enterprise-grade platform\" xmlns:c2pa=\"http:\/\/c2pa.org\/manifest\">\r\n      <defs>\r\n        <linearGradient id=\"oprs26-flowGrad\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\r\n          <stop offset=\"0%\" stop-color=\"#007BC3\"\/>\r\n          <stop offset=\"26%\" stop-color=\"#007BC3\"\/>\r\n          <stop offset=\"34%\" stop-color=\"#45B6F2\"\/>\r\n          <stop offset=\"46%\" stop-color=\"#7FC9A8\"\/>\r\n          <stop offset=\"58%\" stop-color=\"#166534\"\/>\r\n          <stop offset=\"76%\" stop-color=\"#6E8C7A\"\/>\r\n          <stop offset=\"88%\" stop-color=\"#9A7FA3\"\/>\r\n          <stop offset=\"100%\" stop-color=\"#70447A\"\/>\r\n        <\/linearGradient>\r\n      <\/defs>\r\n      <style>  .onflo-prod-rel-sept-26 text { font-family: 'Inter', Helvetica, sans-serif; }\r\n  .onflo-prod-rel-sept-26 .eyebrow { font-size:14px; font-weight:700; letter-spacing:2.5px; }\r\n  .onflo-prod-rel-sept-26 .section-label { font-size:15px; font-weight:700; letter-spacing:1.5px; }\r\n  .onflo-prod-rel-sept-26 .badge-num { font-size:20px; font-weight:700; fill:#ffffff; }\r\n  .onflo-prod-rel-sept-26 .card-title { font-size:18px; font-weight:700; fill:#0B3057; }\r\n  .onflo-prod-rel-sept-26 .card-desc { font-size:15px; fill:#475569; }\r\n  .onflo-prod-rel-sept-26 .panel-title { font-size:21px; font-weight:700; fill:#ffffff; font-family: 'Urbanist', sans-serif; }\r\n  .onflo-prod-rel-sept-26 .panel-item { font-size:13.5px; fill:#ADE1FB; }\r\n  .onflo-prod-rel-sept-26 .flow-label { font-size:14px; font-weight:700; letter-spacing:1.5px; }\r\n  .onflo-prod-rel-sept-26 .hl-link { cursor: pointer; outline: none; }\r\n  .onflo-prod-rel-sept-26 .hl-link > rect:first-child { transition: stroke 0.15s, filter 0.15s; }\r\n  .onflo-prod-rel-sept-26 .hl-link:hover > rect:first-child,\r\n  .onflo-prod-rel-sept-26 .hl-link:focus > rect:first-child { stroke: #007BC3; stroke-width: 2; filter: drop-shadow(0 6px 14px rgba(0,123,195,0.22)); }\r\n  .onflo-prod-rel-sept-26 .hl-link:hover .card-title,\r\n  .onflo-prod-rel-sept-26 .hl-link:focus .card-title { fill: #007BC3; }\r\n      <\/style>\r\n\r\n      <rect x=\"0\" y=\"0\" width=\"1430\" height=\"676\" rx=\"28\" fill=\"#F4F6F8\"\/>\r\n\r\n      <text x=\"240\" y=\"44\" text-anchor=\"middle\" class=\"section-label\" fill=\"#007BC3\">ARCHITECTURAL FOUNDATION<\/text>\r\n      <rect x=\"60\" y=\"52\" width=\"360\" height=\"3\" rx=\"1.5\" fill=\"#007BC3\"\/>\r\n\r\n      <text x=\"905\" y=\"44\" text-anchor=\"middle\" class=\"section-label\" fill=\"#70447A\">EXPANDED CAPABILITIES<\/text>\r\n      <rect x=\"440\" y=\"52\" width=\"930\" height=\"3\" rx=\"1.5\" fill=\"#70447A\"\/>\r\n\r\n      <!-- ===== Card 1: Onflo Modules ===== -->\r\n      <g class=\"hl-link\" data-tab=\"modules\" tabindex=\"0\" role=\"button\" aria-label=\"Onflo Modules\">\r\n        <rect x=\"60\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"90\" cy=\"100\" r=\"22\" fill=\"#007BC3\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"90\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">1<\/text>\r\n        <rect x=\"113\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#007BC3\"\/>\r\n        <g transform=\"translate(121,146) scale(2)\">\r\n          <rect x=\"3\" y=\"3\" width=\"8\" height=\"8\" rx=\"2\" fill=\"#ffffff\"\/>\r\n          <rect x=\"13\" y=\"3\" width=\"8\" height=\"8\" rx=\"2\" fill=\"#ffffff\"\/>\r\n          <rect x=\"3\" y=\"13\" width=\"8\" height=\"8\" rx=\"2\" fill=\"#ffffff\"\/>\r\n          <rect x=\"13\" y=\"13\" width=\"8\" height=\"8\" rx=\"2\" fill=\"#ffffff\"\/>\r\n        <\/g>\r\n        <text x=\"145\" y=\"245\" text-anchor=\"middle\" class=\"card-title\">Onflo Modules<\/text>\r\n        <text x=\"145\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"145\" dy=\"0\">Flexible, multi-<\/tspan>\r\n          <tspan x=\"145\" dy=\"22\">tenant architecture<\/tspan>\r\n          <tspan x=\"145\" dy=\"22\">with department-<\/tspan>\r\n          <tspan x=\"145\" dy=\"22\">level control.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 2: Agent Management ===== -->\r\n      <g class=\"hl-link\" data-tab=\"agent-management\" tabindex=\"0\" role=\"button\" aria-label=\"Agent Management\">\r\n        <rect x=\"250\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"280\" cy=\"100\" r=\"22\" fill=\"#007BC3\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"280\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">2<\/text>\r\n        <rect x=\"303\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#007BC3\"\/>\r\n        <g transform=\"translate(309.4,144.6) scale(2.13)\">\r\n          <circle cx=\"12\" cy=\"7.6\" r=\"4.1\" fill=\"#ffffff\"\/>\r\n          <path d=\"M3.6,20.4 c0-4.64 3.76-8.4 8.4-8.4 s8.4,3.76 8.4,8.4 z\" fill=\"#ffffff\"\/>\r\n        <\/g>\r\n        <text x=\"335\" y=\"234\" text-anchor=\"middle\" class=\"card-title\">\r\n          <tspan x=\"335\" dy=\"0\">Agent<\/tspan>\r\n          <tspan x=\"335\" dy=\"23\">Management<\/tspan>\r\n        <\/text>\r\n        <text x=\"335\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"335\" dy=\"0\">Enterprise-grade<\/tspan>\r\n          <tspan x=\"335\" dy=\"22\">user management<\/tspan>\r\n          <tspan x=\"335\" dy=\"22\">with granular roles<\/tspan>\r\n          <tspan x=\"335\" dy=\"22\">&amp; permissions.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 3: Workflows 2.0 ===== -->\r\n      <g class=\"hl-link\" data-tab=\"workflows\" tabindex=\"0\" role=\"button\" aria-label=\"Workflows 2.0\">\r\n        <rect x=\"440\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"470\" cy=\"100\" r=\"22\" fill=\"#166534\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"470\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">3<\/text>\r\n        <rect x=\"493\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#166534\"\/>\r\n        <g transform=\"translate(504.4,149.4) scale(1.714)\">\r\n          <rect x=\"11.2\" y=\"5.2\" width=\"1.6\" height=\"13.6\" rx=\"0.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"8\" y=\"11.2\" width=\"8\" height=\"1.6\" rx=\"0.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"11.2\" y=\"5.2\" width=\"5\" height=\"1.6\" rx=\"0.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"11.2\" y=\"17.2\" width=\"5\" height=\"1.6\" rx=\"0.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"1.5\" y=\"9\" width=\"7.5\" height=\"6\" rx=\"1.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"15.5\" y=\"3\" width=\"7\" height=\"6\" rx=\"1.8\" fill=\"#ffffff\"\/>\r\n          <rect x=\"15.5\" y=\"15\" width=\"7\" height=\"6\" rx=\"1.8\" fill=\"#ffffff\"\/>\r\n        <\/g>\r\n        <text x=\"525\" y=\"245\" text-anchor=\"middle\" class=\"card-title\">Workflows 2.0<\/text>\r\n        <text x=\"525\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"525\" dy=\"0\">More triggers,<\/tspan>\r\n          <tspan x=\"525\" dy=\"22\">conditions and<\/tspan>\r\n          <tspan x=\"525\" dy=\"22\">actions, and now<\/tspan>\r\n          <tspan x=\"525\" dy=\"22\">easier to manage.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 4: AI Phone Agent ===== -->\r\n      <g class=\"hl-link\" data-tab=\"ai-phone-agent\" tabindex=\"0\" role=\"button\" aria-label=\"AI Phone Agent, Beta\">\r\n        <rect x=\"630\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <rect x=\"744\" y=\"110\" width=\"46\" height=\"22\" rx=\"11\" fill=\"#0b3057\"\/>\r\n        <text x=\"767\" y=\"124.5\" text-anchor=\"middle\" font-size=\"11.5\" font-weight=\"700\" letter-spacing=\"0.5\" fill=\"#ffffff\">BETA<\/text>\r\n        <circle cx=\"660\" cy=\"100\" r=\"22\" fill=\"#70447A\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"660\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">4<\/text>\r\n        <rect x=\"683\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#70447A\"\/>\r\n        <g transform=\"translate(692,147.8) scale(1.915)\">\r\n          <path d=\"M6.62,10.79c1.44,2.83 3.76,5.14 6.59,6.59l2.2-2.2c.27-.27 .67-.36 1.02-.24 1.12 .37 2.32 .57 3.57 .57 .55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55 .45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25 .2 2.45 .57 3.57 .11 .35 .03 .74-.25 1.02l-2.2 2.2z\" fill=\"#ffffff\"\/>\r\n          <path d=\"M18.4,2.2 L19.35,4.55 L21.7,5.5 L19.35,6.45 L18.4,8.8 L17.45,6.45 L15.1,5.5 L17.45,4.55 Z\" fill=\"#ffffff\"\/>\r\n        <\/g>\r\n        <text x=\"715\" y=\"234\" text-anchor=\"middle\" class=\"card-title\">\r\n          <tspan x=\"715\" dy=\"0\">AI Phone<\/tspan>\r\n          <tspan x=\"715\" dy=\"23\">Agent<\/tspan>\r\n        <\/text>\r\n        <text x=\"715\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"715\" dy=\"0\">Industry-first AI<\/tspan>\r\n          <tspan x=\"715\" dy=\"22\">phone assistant<\/tspan>\r\n          <tspan x=\"715\" dy=\"22\">built into the K-12<\/tspan>\r\n          <tspan x=\"715\" dy=\"22\">service desk.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 5: Flo AI Assist ===== -->\r\n      <g class=\"hl-link\" data-tab=\"ai\" tabindex=\"0\" role=\"button\" aria-label=\"Flo AI Assist\">\r\n        <rect x=\"820\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"850\" cy=\"100\" r=\"22\" fill=\"#166534\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"850\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">5<\/text>\r\n        <rect x=\"873\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#166534\"\/>\r\n        <g transform=\"translate(883.4,148.4) scale(1.8)\">\r\n          <path d=\"M4,3 h16 a2,2 0 0 1 2,2 v10 a2,2 0 0 1 -2,2 h-9 l-5,4 v-4 h-2 a2,2 0 0 1 -2,-2 V5 a2,2 0 0 1 2,-2 z\" fill=\"#ffffff\"\/>\r\n          <path d=\"M12,6 L13.15,8.85 L16,10 L13.15,11.15 L12,14 L10.85,11.15 L8,10 L10.85,8.85 Z\" fill=\"#166534\"\/>\r\n        <\/g>\r\n        <text x=\"905\" y=\"245\" text-anchor=\"middle\" class=\"card-title\">Flo AI Assist<\/text>\r\n        <text x=\"905\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"905\" dy=\"0\">Live agent<\/tspan>\r\n          <tspan x=\"905\" dy=\"22\">assistance for<\/tspan>\r\n          <tspan x=\"905\" dy=\"22\">managing and<\/tspan>\r\n          <tspan x=\"905\" dy=\"22\">resolving tickets.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 6: IT Asset Management ===== -->\r\n      <g class=\"hl-link\" data-tab=\"assets\" tabindex=\"0\" role=\"button\" aria-label=\"IT Asset Management\">\r\n        <rect x=\"1010\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"1040\" cy=\"100\" r=\"22\" fill=\"#70447A\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"1040\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">6<\/text>\r\n        <rect x=\"1063\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#70447A\"\/>\r\n        <g transform=\"translate(1072.5,147.1) scale(1.875)\">\r\n          <rect x=\"2.4\" y=\"4\" width=\"19.2\" height=\"6.4\" rx=\"1.6\" fill=\"#ffffff\"\/>\r\n          <rect x=\"2.4\" y=\"14\" width=\"19.2\" height=\"6.4\" rx=\"1.6\" fill=\"#ffffff\"\/>\r\n          <circle cx=\"6.4\" cy=\"7.2\" r=\"1.3\" fill=\"#70447A\"\/>\r\n          <circle cx=\"6.4\" cy=\"17.2\" r=\"1.3\" fill=\"#70447A\"\/>\r\n        <\/g>\r\n        <text x=\"1095\" y=\"234\" text-anchor=\"middle\" class=\"card-title\">\r\n          <tspan x=\"1095\" dy=\"0\">IT Asset<\/tspan>\r\n          <tspan x=\"1095\" dy=\"23\">Management<\/tspan>\r\n        <\/text>\r\n        <text x=\"1095\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"1095\" dy=\"0\">Linked assets and<\/tspan>\r\n          <tspan x=\"1095\" dy=\"22\">scheduled imports<\/tspan>\r\n          <tspan x=\"1095\" dy=\"22\">keep inventory<\/tspan>\r\n          <tspan x=\"1095\" dy=\"22\">accurate.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Card 7: Ticketing Enhancements ===== -->\r\n      <g class=\"hl-link\" data-tab=\"tickets\" tabindex=\"0\" role=\"button\" aria-label=\"Ticketing Enhancements\">\r\n        <rect x=\"1200\" y=\"100\" width=\"170\" height=\"310\" rx=\"18\" fill=\"#ffffff\" stroke=\"#D8DEE6\" stroke-width=\"1\"\/>\r\n        <circle cx=\"1230\" cy=\"100\" r=\"22\" fill=\"#166534\" stroke=\"#F4F6F8\" stroke-width=\"4\"\/>\r\n        <text x=\"1230\" y=\"107\" text-anchor=\"middle\" class=\"badge-num\">7<\/text>\r\n        <rect x=\"1253\" y=\"138\" width=\"64\" height=\"64\" rx=\"16\" fill=\"#166534\"\/>\r\n        <g transform=\"translate(1263.4,148.4) scale(1.8)\">\r\n          <rect x=\"2\" y=\"6\" width=\"20\" height=\"12\" rx=\"2.4\" fill=\"#ffffff\"\/>\r\n          <circle cx=\"2\" cy=\"12\" r=\"2.6\" fill=\"#166534\"\/>\r\n          <circle cx=\"22\" cy=\"12\" r=\"2.6\" fill=\"#166534\"\/>\r\n          <rect x=\"11.3\" y=\"7.6\" width=\"1.4\" height=\"2.6\" rx=\"0.7\" fill=\"#166534\"\/>\r\n          <rect x=\"11.3\" y=\"10.9\" width=\"1.4\" height=\"2.2\" rx=\"0.7\" fill=\"#166534\"\/>\r\n          <rect x=\"11.3\" y=\"13.8\" width=\"1.4\" height=\"2.6\" rx=\"0.7\" fill=\"#166534\"\/>\r\n        <\/g>\r\n        <text x=\"1285\" y=\"234\" text-anchor=\"middle\" class=\"card-title\">\r\n          <tspan x=\"1285\" dy=\"0\">Ticketing<\/tspan>\r\n          <tspan x=\"1285\" dy=\"23\">Enhancements<\/tspan>\r\n        <\/text>\r\n        <text x=\"1285\" y=\"300\" text-anchor=\"middle\" class=\"card-desc\">\r\n          <tspan x=\"1285\" dy=\"0\">Better handling of<\/tspan>\r\n          <tspan x=\"1285\" dy=\"22\">recurring tickets<\/tspan>\r\n          <tspan x=\"1285\" dy=\"22\">and duplicate<\/tspan>\r\n          <tspan x=\"1285\" dy=\"22\">detection.<\/tspan>\r\n        <\/text>\r\n      <\/g>\r\n\r\n      <!-- ===== Flow bar ===== -->\r\n      <rect x=\"60\" y=\"430\" width=\"1310\" height=\"8\" rx=\"4\" fill=\"url(#oprs26-flowGrad)\"\/>\r\n\r\n      <text x=\"240\" y=\"462\" text-anchor=\"middle\" class=\"flow-label\" fill=\"#007BC3\">STRONGER ARCHITECTURE<\/text>\r\n      <text x=\"905\" y=\"462\" text-anchor=\"middle\" class=\"flow-label\" fill=\"#70447A\">SMARTER AUTOMATION<\/text>\r\n\r\n      <!-- ===== Footer band: A truly enterprise-grade Onflo ===== -->\r\n      <g>\r\n        <rect x=\"60\" y=\"490\" width=\"1310\" height=\"156\" rx=\"20\" fill=\"#0b3057\"\/>\r\n\r\n        <circle cx=\"112\" cy=\"568\" r=\"22\" fill=\"#45B6F2\"\/>\r\n        <path d=\"M112,553 L116,562 L126,564 L118,571 L120,581 L112,576 L104,581 L106,571 L98,564 L108,562 Z\" fill=\"#ffffff\"\/>\r\n\r\n        <text x=\"148\" y=\"552\" class=\"panel-title\" fill=\"#ffffff\" style=\"font-size: 24px\">A Truly Enterprise-Grade Onflo<\/text>\r\n        <text x=\"148\" y=\"582\" class=\"card-desc\" style=\"fill: #ffffff; height: 32px; width: 540px\">\r\n          <tspan x=\"148\" dy=\"0\">Stronger architecture and smarter automation, built to scale<\/tspan>\r\n          <tspan x=\"148\" dy=\"22\">with every district.<\/tspan>\r\n        <\/text>\r\n\r\n        <!-- item 1 -->\r\n        <circle cx=\"723\" cy=\"548\" r=\"9\" fill=\"#45B6F2\"\/>\r\n        <path d=\"M719,548 L722,551 L728,544\" fill=\"none\" stroke=\"#0b3057\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <text x=\"740\" y=\"553\" class=\"panel-item\">Secure, scalable architecture<\/text>\r\n\r\n        <!-- item 2 -->\r\n        <circle cx=\"723\" cy=\"596\" r=\"9\" fill=\"#45B6F2\"\/>\r\n        <path d=\"M719,596 L722,599 L728,592\" fill=\"none\" stroke=\"#0b3057\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <text x=\"740\" y=\"601\" class=\"panel-item\">Support for complex district structures<\/text>\r\n\r\n        <!-- item 3 -->\r\n        <circle cx=\"1036\" cy=\"548\" r=\"9\" fill=\"#45B6F2\"\/>\r\n        <path d=\"M1032,548 L1035,551 L1041,544\" fill=\"none\" stroke=\"#0b3057\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <text x=\"1053\" y=\"553\" class=\"panel-item\">Advanced AI and automation across depts.<\/text>\r\n\r\n        <!-- item 4 -->\r\n        <circle cx=\"1036\" cy=\"596\" r=\"9\" fill=\"#45B6F2\"\/>\r\n        <path d=\"M1032,596 L1035,599 L1041,592\" fill=\"none\" stroke=\"#0b3057\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <text x=\"1053\" y=\"601\" class=\"panel-item\">Better governance across districts<\/text>\r\n      <\/g>\r\n    <\/svg>\r\n    <\/div>\r\n\r\n    <div class=\"hl-mobile\">\r\n      <div class=\"hl-group\">\r\n        <p class=\"hl-group-label foundation\">Architectural foundation<\/p>\r\n        <div class=\"hl-cards\">\r\n        <button class=\"hl-card blue\" data-tab=\"modules\" type=\"button\">\r\n          <span class=\"hc-num\">1<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">widgets<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>Onflo Modules<\/h4>\r\n            <p>Flexible, multi-tenant architecture with department-level control.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <button class=\"hl-card blue\" data-tab=\"agent-management\" type=\"button\">\r\n          <span class=\"hc-num\">2<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">person<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>Agent Management<\/h4>\r\n            <p>Enterprise-grade user management with granular roles &amp; permissions.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"hl-group\">\r\n        <p class=\"hl-group-label expanded\">Expanded capabilities<\/p>\r\n        <div class=\"hl-cards\">\r\n        <button class=\"hl-card green\" data-tab=\"workflows\" type=\"button\">\r\n          <span class=\"hc-num\">3<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">account_tree<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>Workflows 2.0<\/h4>\r\n            <p>More triggers, conditions and actions, and now easier to manage.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <button class=\"hl-card plum\" data-tab=\"ai-phone-agent\" type=\"button\">\r\n          <span class=\"hc-num\">4<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">call<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>AI Phone Agent<span class=\"hc-beta\">BETA<\/span><\/h4>\r\n            <p>Industry-first AI phone assistant built into the K-12 service desk.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <button class=\"hl-card green\" data-tab=\"ai\" type=\"button\">\r\n          <span class=\"hc-num\">5<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">chat_bubble<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>Flo AI Assist<\/h4>\r\n            <p>Live agent assistance for managing and resolving tickets.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <button class=\"hl-card plum\" data-tab=\"assets\" type=\"button\">\r\n          <span class=\"hc-num\">6<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">inventory_2<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>IT Asset Management<\/h4>\r\n            <p>Linked assets and scheduled imports keep inventory accurate.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <button class=\"hl-card green\" data-tab=\"tickets\" type=\"button\">\r\n          <span class=\"hc-num\">7<\/span>\r\n          <span class=\"hc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">confirmation_number<\/span><\/span>\r\n          <span class=\"hc-text\">\r\n            <h4>Ticketing Enhancements<\/h4>\r\n            <p>Better handling of recurring tickets and duplicate detection.<\/p>\r\n          <\/span>\r\n        <\/button>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"hl-summary\">\r\n        <div class=\"hs-head\">\r\n          <span class=\"hs-star\"><span class=\"onflo-icon\" aria-hidden=\"true\">star<\/span><\/span>\r\n          <div>\r\n            <h4>A Truly Enterprise-Grade Onflo<\/h4>\r\n            <p>Stronger architecture and smarter automation, built to scale with every district.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n        <ul>\r\n          <li><span class=\"onflo-icon\" aria-hidden=\"true\">check_circle<\/span>Secure, scalable architecture<\/li>\r\n          <li><span class=\"onflo-icon\" aria-hidden=\"true\">check_circle<\/span>Advanced AI and automation across depts.<\/li>\r\n          <li><span class=\"onflo-icon\" aria-hidden=\"true\">check_circle<\/span>Support for complex district structures<\/li>\r\n          <li><span class=\"onflo-icon\" aria-hidden=\"true\">check_circle<\/span>Better governance across districts<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/div>\r\n    <p class=\"hl-hint\">Tap any capability above to jump straight to its release notes.<\/p>\r\n  <\/div>\r\n<\/section>\r\n\r\n<nav class=\"tabbar-wrap\">\r\n  <div class=\"wrap\">\r\n    <div class=\"tabbar\" id=\"oprs26-tabbar\">\r\n      <button class=\"tab-btn\" data-tab=\"modules\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">widgets<\/span>\r\n        Onflo Modules\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"agent-management\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">manage_accounts<\/span>\r\n        Agent Management\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"workflows\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">account_tree<\/span>\r\n        Workflows 2.0\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"ai-phone-agent\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">call<\/span>\r\n        AI Phone Agent\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"ai\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">auto_awesome<\/span>\r\n        AI Enhancements\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"assets\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">devices<\/span>\r\n        IT Asset Management\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"tickets\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">confirmation_number<\/span>\r\n        Ticketing Enhancements\r\n      <\/button>\r\n      <button class=\"tab-btn\" data-tab=\"dashboard\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">bar_chart<\/span>\r\n        Dashboard 2.0\r\n      <\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/nav>\r\n\r\n<main class=\"wrap\">\r\n\r\n  <!-- ===== Onflo Modules (full detail) ===== -->\r\n  <section class=\"panel is-active\" data-panel=\"modules\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>New Platform Capability<\/span>\r\n      <span class=\"badge blue\">Modular Platform<\/span>\r\n      <span class=\"badge neutral\">Onflo Modules<\/span>\r\n    <\/div>\r\n    <h2 class=\"title tight\">Introducing Onflo Modules<\/h2>\r\n    <p class=\"subheading\">Get Departmental Flexibility with Enterprise Governance<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n    <p class=\"overview-text\">Historically, each department in a K-12 district had to rely on siloed tools to modernize its service delivery and operations.<\/p>\r\n    <p class=\"overview-text\"><strong>Onflo Modules<\/strong> changes that. With this release Onflo helps you bring distinct service operations (IT, HR, Facilities, Transportation, Superintendents' Office and more) onto a unified platform, while giving each team its own purpose-built capabilities, workflows, permissions, administration, data boundaries, and operating model.<\/p>\r\n    <p class=\"overview-text\">Now districts can modernize one service operation at a time, without creating silos or governance issues.<\/p>\r\n\r\n    <div class=\"media-card\">\r\n      <img decoding=\"async\" src=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/09\/Onflo-modules_platform-comparison-1-scaled.png\" alt=\"Comparison of the Core, Specialized, and Custom module options on the Onflo platform.\">\r\n      <div class=\"media-caption\"><span class=\"m-dot\"><\/span>Core, Specialized, and Custom modules \u2014 one platform, built for how your district actually operates<\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">What you get with the new interface<\/h3>\r\n    <div class=\"cap-grid two-col\">\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">web_asset<\/span>\r\n        <\/div>\r\n        <h5>Classic Module<\/h5>\r\n        <p>Ensures continuity \u2014 your existing capabilities, data, workflows, and everything else continue as-is, with no changes.<\/p>\r\n      <\/div>\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">extension<\/span>\r\n        <\/div>\r\n        <h5>Specialized IT Module<\/h5>\r\n        <p>Purpose-built module with rich, department-specific capabilities for IT teams<\/p>\r\n      <\/div>\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">group<\/span>\r\n        <\/div>\r\n        <h5>Enhanced Roles &amp; Permissions<\/h5>\r\n        <p>With <a class=\"tab-link\" data-tab=\"agent-management\">Agent Management<\/a>, Onflo now supports platform-level and module-level administration and permissions.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">What it means for your district<\/h3>\r\n    <div class=\"value-band\">\r\n      <div class=\"vb-head\">\r\n        <span class=\"vb-eyebrow\">District Impact<\/span>\r\n        <span class=\"vb-count\">5 ways Modules pays off<\/span>\r\n      <\/div>\r\n      <div class=\"value-list\">\r\n        <div class=\"value-row\">\r\n          <div class=\"v-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">trending_up<\/span>\r\n          <\/div>\r\n          <div>\r\n            <h4>Maximize Platform ROI<\/h4>\r\n            <p>Expand Onflo across your organization without adding another system. Modernize one department at a time and maximize the value of your existing enterprise investment.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"value-row\">\r\n          <div class=\"v-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">hub<\/span>\r\n          <\/div>\r\n          <div>\r\n            <h4>Eliminate Tech Sprawl<\/h4>\r\n            <p>Replace a patchwork of departmental tools with one connected platform. Reduce software spend, integrations, duplicate data, and the work it takes to keep everything running.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"value-row\">\r\n          <div class=\"v-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">bolt<\/span>\r\n          <\/div>\r\n          <div>\r\n            <h4>Give Every Department the Tools It Needs<\/h4>\r\n            <p>Onflo is now better positioned to equip IT, HR, Facilities, and other teams with powerful, purpose-built capabilities and workflows \u2014 without forcing everyone into the same one-size-fits-all solution.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"value-row\">\r\n          <div class=\"v-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">verified_user<\/span>\r\n          <\/div>\r\n          <div>\r\n            <h4>Strengthen District Governance<\/h4>\r\n            <p>Centralize security, governance, and core infrastructure while giving department leaders the freedom to manage their own day-to-day operations.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"value-row\">\r\n          <div class=\"v-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">grid_view<\/span>\r\n          <\/div>\r\n          <div>\r\n            <h4>Flexible for Teams. Secure by Design.<\/h4>\r\n            <p>Let every department configure its own workflows, forms, queues, SLAs, dashboards, permissions, and assets, while strict data boundaries keep sensitive information protected and isolated.<\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"media-card\">\r\n      <video controls playsinline preload=\"metadata\" src=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/10\/modules.mp4\">Your browser does not support the video tag.<\/video>\r\n      <div class=\"media-caption\"><span class=\"m-dot\"><\/span>Watch: Onflo Modules in action<\/div>\r\n    <\/div>\r\n\r\n    <div class=\"divider\">\r\n      <div class=\"line\"><\/div>\r\n      <span class=\"label\">Dive Deeper Into This Capability<\/span>\r\n      <div class=\"line\"><\/div>\r\n    <\/div>\r\n\r\n    <!-- Collapsible: What's changing -->\r\n    <details class=\"dive-card\" open>\r\n      <summary>What's changing\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <p>With Onflo Modules, each service operation team now gets what it needs without requiring its own disconnected point solution.<\/p>\r\n        <ul>\r\n          <li>Multiple modules within Onflo platform, including purpose-built modules and configurable modules for other district functions.<\/li>\r\n          <li>Every Module has its own workflows, forms, queues, agents, SLAs, dashboards, permissions, assets, and configurations.<\/li>\r\n          <li>Purpose-built functionality by Module \u2014 for instance technology asset capabilities for IT.<\/li>\r\n          <li><a class=\"tab-link\" data-tab=\"agent-management\">Global Admin role<\/a> for district-wide governance, permissions and configuration.<\/li>\r\n          <li>Module-level administrators, so individual teams can administer their own operations without requiring the Global Admin to run everything.<\/li>\r\n          <li>Central definition of shared enterprise information \u2014 locations, integrations, authentication, phone infrastructure, languages, and AI knowledge\/training sources, with ability to delegate appropriate administrative rights to individual modules.<\/li>\r\n          <li>Separate sensitive information between modules using role-based access, so different operations don't automatically have visibility into one another's work.<\/li>\r\n          <li>Configurable modules, so districts aren't limited to a predetermined list of departments or organizational structures.<\/li>\r\n        <\/ul>\r\n        <p>Centralized auditability, governance, usage visibility, and accountability while distributing operational administration.<\/p>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: Getting ready -->\r\n    <details class=\"dive-card\">\r\n      <summary>Getting ready\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <h4>For non-IT departments<\/h4>\r\n        <p>Everything continues as it is within the <strong>Classic Module<\/strong>. Your existing data, workflows, capabilities, and SLAs will not be impacted by this change.<\/p>\r\n        <div class=\"prep-highlight\">\r\n          <strong>The only change to make now:<\/strong> name a Global Admin. See <a class=\"tab-link\" data-tab=\"agent-management\">Agent Management<\/a> for full details on the role and how to assign it.\r\n        <\/div>\r\n        <h4>For IT departments<\/h4>\r\n        <p>Your IT data, workflow, capabilities, SLAs and everything else will now be placed inside the IT Module. The change will happen automatically and no action is needed at your end. This includes both ITSM and IT Asset Management capabilities.<\/p>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: FAQ -->\r\n    <details class=\"dive-card\">\r\n      <summary>FAQ\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <h4>Core Concept &amp; Flexibility<\/h4>\r\n        <ul>\r\n          <li><strong>What are Onflo Modules?<\/strong> Independently configurable workspaces for district departments \u2014 IT, HR, Facilities, and more \u2014 that live on one unified enterprise platform, so each team can operate the way it needs to without creating disconnected technology silos.<\/li>\r\n          <li><strong>Does every department have to work the same way?<\/strong> No. Each Module can have its own customized workflows, forms, queues, SLAs, permissions, and dashboards.<\/li>\r\n          <li><strong>Can we create custom modules for non-traditional departments?<\/strong> Yes. Districts can create modules for other organizational functions beyond the standard list.<\/li>\r\n        <\/ul>\r\n        <h4>Platform Governance &amp; Consolidation<\/h4>\r\n        <ul>\r\n          <li><strong>How do modules balance departmental autonomy with district-wide security?<\/strong> Onflo separates daily operational administration from enterprise governance. Departments manage their own processes, while the district centrally governs core infrastructure \u2014 identity, security, enterprise integrations. Granular role-based access control keeps sensitive data restricted.<\/li>\r\n          <li><strong>Can Onflo Modules help consolidate point solutions?<\/strong> Yes. Instead of procuring and maintaining separate systems for IT tickets, maintenance work orders, and HR requests, districts can bring all of it onto one platform \u2014 drastically reducing tech sprawl.<\/li>\r\n          <li><strong>Does the entire district have to transition at once?<\/strong> No. Districts can adopt a phased approach, modernizing one department at a time based on readiness and priority.<\/li>\r\n        <\/ul>\r\n        <h4>The User Experience &amp; K-12 Focus<\/h4>\r\n        <ul>\r\n          <li><strong>Why choose Onflo over general-purpose enterprise platforms?<\/strong> Onflo is purpose-built for K-12 operations. It inherently understands school data structures and comes pre-integrated with systems like SIS, HRIS, and MDM \u2014 saving districts from heavy custom configuration.<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/details>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== Agent Management (full detail) ===== -->\r\n  <section class=\"panel\" data-panel=\"agent-management\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>New Role<\/span>\r\n      <span class=\"badge blue\">Platform Governance<\/span>\r\n      <span class=\"badge neutral\">Agent Management<\/span>\r\n    <\/div>\r\n    <h2 class=\"title\">Agent Management \u2014 Meet the New Global Administrator<\/h2>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n    <p class=\"overview-text\">As Onflo becomes a modular platform with <a class=\"tab-link\" data-tab=\"modules\">Onflo Modules<\/a>, districts need more than basic user management \u2014 they need real governance across every module they use. Agent Management is our answer: a purpose-built upgrade that gives your help desk and fulfiller teams fine-grained, role-based control. The right people get exactly the access they need, so your team can spend less time managing permissions and more time serving students, staff, and families.<\/p>\r\n\r\n    <div class=\"media-card\">\r\n      <img decoding=\"async\" src=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/09\/onflo-agent-management-before-after_2x-1-scaled.png\" alt=\"Before: tangled, one-to-many access from individual System Admins into every system. After: a Global Admin governs a Central Hub, delegating IT and HR Modules to their own Module Admins.\">\r\n      <div class=\"media-caption\"><span class=\"m-dot\"><\/span>Before vs. after \u2014 from scattered System Admin access to one governed hierarchy<\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">What you get with the new interface<\/h3>\r\n    <div class=\"cap-grid two-col\">\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">shield_person<\/span>\r\n        <\/div>\r\n        <h5>Global Admin<\/h5>\r\n        <p>A new role built for stronger IT governance across your entire platform.<\/p>\r\n      <\/div>\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">groups<\/span>\r\n        <\/div>\r\n        <h5>Central Listing<\/h5>\r\n        <p>One home for everyone who works in Onflo, organized into four tabs: Agents, Teams, Permission Sets, and Authentication.<\/p>\r\n      <\/div>\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">rule<\/span>\r\n        <\/div>\r\n        <h5>Role-Based Control<\/h5>\r\n        <p>Administration now works on two clear levels \u2014 Global Admins run the district, Module Admins run their module.<\/p>\r\n      <\/div>\r\n      <div class=\"cap-card\">\r\n        <div class=\"cc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">task_alt<\/span>\r\n        <\/div>\r\n        <h5>Continuity, Guaranteed<\/h5>\r\n        <p>Every existing permission carries forward automatically. No one loses access to the work they already do.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"media-card\">\r\n      <video controls playsinline preload=\"metadata\" src=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/10\/agentmanagement.mp4\">Your browser does not support the video tag.<\/video>\r\n      <div class=\"media-caption\"><span class=\"m-dot\"><\/span>Watch: Agent Management in action<\/div>\r\n    <\/div>\r\n\r\n    <div class=\"divider\">\r\n      <div class=\"line\"><\/div>\r\n      <span class=\"label\">Dive Deeper Into This Capability<\/span>\r\n      <div class=\"line\"><\/div>\r\n    <\/div>\r\n\r\n    <!-- Collapsible: What's changing -->\r\n    <details class=\"dive-card\" open>\r\n      <summary>What's changing\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <h4>Agent Management (formerly User Management)<\/h4>\r\n        <ul>\r\n          <li>A full agent profile page brings details, permissions, and activity together in one place.<\/li>\r\n          <li>A Permission Sets column replaces Roles, giving you a clearer, more flexible way to see who can do what.<\/li>\r\n          <li>You can create and edit your own teams. Teams synced from an integration stay read-only, so there's never a sync conflict.<\/li>\r\n          <li>\"Agent\" replaces \"User\" throughout Onflo \u2014 a user is now simply the person submitting a request, which keeps the language clear for everyone on your team.<\/li>\r\n        <\/ul>\r\n        <h4>Permissions, refined<\/h4>\r\n        <ul>\r\n          <li>Every permission now lives clearly at the district level or the module level \u2014 no more guessing who controls what.<\/li>\r\n          <li>A new Module Admin set gives someone full control of a single module.<\/li>\r\n          <li>Permission sets belong to a module, so each module manages its own independently.<\/li>\r\n          <li>The editor only shows the permissions a module actually has, cutting the noise and speeding up setup.<\/li>\r\n          <li>IT's system role is now called Technician; Classic's is now called Team Member.<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: Who's affected -->\r\n    <details class=\"dive-card\">\r\n      <summary>Who's affected\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <h4>Meet the new Global Admin<\/h4>\r\n        <p>Global Admin is a role built for the person on your team with the full picture of how Onflo is set up across the district \u2014 the one who owns your SIS, MDM, SSO, and portal configuration. It frees your Module Admins from carrying district-wide settings, so they can focus entirely on what their own department needs.<\/p>\r\n\r\n        <div class=\"role-callout\">\r\n          <h5>What a Global Admin can create or manage<\/h5>\r\n          <ul>\r\n            <li>Locations<\/li>\r\n            <li>Integrations \u2014 SSO, MDM, SIS<\/li>\r\n            <li>Call Center setup<\/li>\r\n            <li>Portal branding, languages, and your district profile<\/li>\r\n            <li>Two-factor authentication<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n\r\n        <h4>Today's System Administrators<\/h4>\r\n        <p>If you're a System Administrator today, you become a Module Admin. Inside your module, nothing changes \u2014 you keep the access and control you already have.<\/p>\r\n\r\n        <h4>Everyone else<\/h4>\r\n        <p>Team Members and Technicians see no change. Neither do the people submitting requests.<\/p>\r\n\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: Getting ready -->\r\n    <details class=\"dive-card\">\r\n      <summary>Getting ready\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <p>Preparing for Agent Management is quick \u2014 most of the work is a short conversation, not a project. It also lays the groundwork for <a class=\"tab-link\" data-tab=\"modules\">Onflo Modules<\/a>, since every module relies on the same Global Admin and Module Admin roles.<\/p>\r\n        <div class=\"prep-highlight\">\r\n          <strong>Step one: name a Global Admin.<\/strong> This is the one thing to do before the release goes live. A Global Admin owns how Onflo is set up across your district \u2014 usually who manages your software systems today: a Director of Technology, a Systems Engineer etc. We recommend naming two, so there's always coverage when someone's away. Without a Global Admin named, you need to reach out to Onflo team for updating district-wide settings.\r\n        <\/div>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: Glossary -->\r\n    <details class=\"dive-card\">\r\n      <summary>Glossary of terms and roles\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <div class=\"table-scroll\">\r\n          <table>\r\n            <thead><tr><th>Old term<\/th><th>New term<\/th><th>What it means now<\/th><\/tr><\/thead>\r\n            <tbody>\r\n              <tr><td><em>None<\/em><\/td><td>Global Admin<\/td><td>Manages district-wide, global settings.<\/td><\/tr>\r\n              <tr><td>System Administrator<\/td><td>Module Admin<\/td><td>Full control of their own module. District-wide settings are no longer theirs to change.<\/td><\/tr>\r\n              <tr><td>User Management<\/td><td>Agent Management<\/td><td>The same work, in one place: Agents, Teams, Permission Sets, and Authentication.<\/td><\/tr>\r\n              <tr><td>Role<\/td><td>Permission Set<\/td><td>A named bundle of permissions, given to an agent or a team within one module.<\/td><\/tr>\r\n              <tr><td>User Groups<\/td><td>Team<\/td><td>Create and manage teams, including synced teams from integrations.<\/td><\/tr>\r\n              <tr><td>Agent (in IT)<\/td><td>Technician<\/td><td>The same permissions, under IT's own name.<\/td><\/tr>\r\n              <tr><td>Agent (in Core)<\/td><td>Team Member<\/td><td>The same permissions. Each module has its own set.<\/td><\/tr>\r\n            <\/tbody>\r\n          <\/table>\r\n        <\/div>\r\n      <\/div>\r\n    <\/details>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== Workflows 2.0 (full detail) ===== -->\r\n  <section class=\"panel\" data-panel=\"workflows\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>Automation<\/span>\r\n      <span class=\"badge blue\">Workflows<\/span>\r\n      <span class=\"badge neutral\">Tickets<\/span>\r\n      <span class=\"badge neutral\">Assets<\/span>\r\n    <\/div>\r\n    <h2 class=\"title tight\">Introducing Workflows 2.0<\/h2>\r\n    <p class=\"subheading\">Easier to Build and Simpler to Manage<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n    <p class=\"overview-text\">Onflo's original workflow capabilities did the job, but as Onflo transitions to a modular approach, district needs will soon outgrow existing capabilities.<\/p>\r\n    <p class=\"overview-text\">Hence, we are proud to launch <strong>Workflows 2.0<\/strong> that replaces existing workflow module with one modern, no-code automation engine.<\/p>\r\n    <p class=\"overview-text\">Now, you get a single interface for different record types (Tickets, Assets), far more granular control over triggers, conditions, and actions; and a new monitoring setup to manage the workflows.<\/p>\r\n    <p class=\"overview-text\">The result is fewer fragmented workflows doing narrow jobs, and more comprehensive ones doing the whole job, and your team spends less time maintaining automations and more time serving your district.<\/p>\r\n    <p class=\"overview-text\">This release also introduces <strong>Lookup tables<\/strong> \u2014 that makes Onflo workflows smarter. Instead of manually entering location, department, or asset info every time, Onflo checks a lookup table and fills it in automatically. These lookup tables are built right inside Onflo itself \u2014 you can either set them up by hand, or upload a file \u2014 so tickets get routed to the right place.<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">What you get with Workflow 2.0<\/h3>\r\n\r\n    <div class=\"cap-group build\">\r\n      <div class=\"cap-group-head\">\r\n        <span class=\"cgh-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">construction<\/span>\r\n        <\/span>\r\n        <h4>Build<\/h4>\r\n        <span class=\"cgh-sub\">Assemble sharper automations<\/span>\r\n        <span class=\"cgh-line\"><\/span>\r\n      <\/div>\r\n      <div class=\"cap-grid\">\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">bolt<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Expanded Triggers<\/span>\r\n          <p>Ticket status changes, assignments, approvals and related tasks, lifecycle triggers, and asset status changes.<\/p>\r\n        <\/div>\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">filter_alt<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Granular Conditions<\/span>\r\n          <p>Location fields, organizational context and roles, tag and topic-based assignments, and operational metrics like SLA, Time in Status etc.<\/p>\r\n        <\/div>\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">autorenew<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Powerful Actions<\/span>\r\n          <p>Team assignments &amp; load balancing, tagging and splitting of tickets, support for common tasks like customer replies, emails, webhook creation and much more.<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"cap-group monitor\">\r\n      <div class=\"cap-group-head\">\r\n        <span class=\"cgh-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">monitoring<\/span>\r\n        <\/span>\r\n        <h4>View<\/h4>\r\n        <span class=\"cgh-sub\">See what's actually setup<\/span>\r\n        <span class=\"cgh-line\"><\/span>\r\n      <\/div>\r\n      <div class=\"cap-grid\">\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">search<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Simplified Lists<\/span>\r\n          <p>Segmented by category and trigger, search by name or tags, drag-to-reorder and edit options.<\/p>\r\n        <\/div>\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">chat_bubble<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Natural-Language Previews<\/span>\r\n          <p>Expanding bar to show conditions and actions as readable clauses.<\/p>\r\n        <\/div>\r\n        <div class=\"cap-card\">\r\n          <div class=\"cc-icon\">\r\n            <span class=\"onflo-icon\" aria-hidden=\"true\">bar_chart<\/span>\r\n          <\/div>\r\n          <span class=\"cc-kicker\">Detailed Execution Logs<\/span>\r\n          <p>KPI cards to show number of executions, success rates, errors, average duration and more.<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">What it means for your district<\/h3>\r\n    <div class=\"value-band\">\r\n      <div class=\"vb-head\">\r\n        <span class=\"vb-eyebrow\">District Impact<\/span>\r\n        <span class=\"vb-count\">6 ways Workflows 2.0 pays off<\/span>\r\n      <\/div>\r\n      <div class=\"value-checklist\">\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Build more comprehensive workflows that replace multiple fragmented ones<\/p>\r\n        <\/div>\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Automate a wider range of use cases with workflows including tasks and approvals<\/p>\r\n        <\/div>\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Govern and improve workflow effectiveness with detailed usage metrics<\/p>\r\n        <\/div>\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Automate complex, multi-step tasks more efficiently<\/p>\r\n        <\/div>\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Use Look-up tables for smarter automation and reduce repetitive workflow creation<\/p>\r\n        <\/div>\r\n        <div class=\"vc-item\">\r\n          <span class=\"vc-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Ensure team efficiencies and SLAs with automation based on operational metrics<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Legacy vs. new \u2014 the value at a glance<\/h3>\r\n    <div class=\"table-scroll\">\r\n      <table>\r\n        <thead><tr><th>Help Desk Requirement<\/th><th>Legacy Workflow<\/th><th>Workflow 2.0<\/th><th>Value Impact<\/th><\/tr><\/thead>\r\n        <tbody>\r\n          <tr>\r\n            <td>Location-Level Request Routing<\/td>\r\n            <td>Multiple workflows, each hand-built per location, using individual conditions and actions.<\/td>\r\n            <td>One consolidated workflow using a lookup table for Campus, Building, Room, Role, and more.<\/td>\r\n            <td><strong>Faster automation creation:<\/strong> easier to build workflows that route requests straight to the technician assigned to that building or hallway, cutting response times.<\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td>Tasks &amp; Approval Automation<\/td>\r\n            <td>Multi-step sub-tasks and approvals relying on manual handoffs and untracked email approvals.<\/td>\r\n            <td>Automatically create a linked ticket, assign it to a new user, and generate sub-tasks and approval requests.<\/td>\r\n            <td><strong>Seamless workflows:<\/strong> improves cycle time and visibility across complex, multi-step processes.<\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td>Monitoring of Ticket Status<\/td>\r\n            <td>Reactive only \u2014 workflows run exclusively on initial save or create.<\/td>\r\n            <td>Time-driven triggers like Ticket Stale and On a Schedule keep watching a ticket after it's created.<\/td>\r\n            <td><strong>No abandoned requests:<\/strong> automatically flags unassigned or stalled tickets before they disrupt instruction.<\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td>Cross-Team Request Management<\/td>\r\n            <td>Single, isolated tickets requiring manual copying and pasting between teams.<\/td>\r\n            <td>Create a task, split a ticket, or add it to a global ticket.<\/td>\r\n            <td><strong>Streamlined district operations:<\/strong> lets IT link split tickets to different stakeholders and assign approvals and tasks for a seamless, end-to-end process.<\/td>\r\n          <\/tr>\r\n        <\/tbody>\r\n      <\/table>\r\n    <\/div>\r\n\r\n    <div class=\"divider\">\r\n      <div class=\"line\"><\/div>\r\n      <span class=\"label\">Dive Deeper Into This Capability<\/span>\r\n      <div class=\"line\"><\/div>\r\n    <\/div>\r\n\r\n    <!-- Collapsible: What's changing -->\r\n    <details class=\"dive-card\" open>\r\n      <summary>What's changing\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <ul>\r\n          <li>Tickets and Assets now sit on one automation interface \u2014 no more building the same logic separately for each record type.<\/li>\r\n          <li>Every workflow follows the same clear structure: one trigger event, optional condition groups that narrow which records it applies to, and an ordered list of actions that run when it matches.<\/li>\r\n          <li>New support for Lookup Tables and SIS integration means workflows can now key off the institutional data you already manage \u2014 campus, building, room, and role \u2014 without hand-built condition lists.<\/li>\r\n        <\/ul>\r\n\r\n        <h4>An expanded list of triggers<\/h4>\r\n        <ul>\r\n          <li>The redesigned engine adds explicit triggers for ticket status changes, assignments, approvals and related tasks, lifecycle events like stale tickets, scheduled runs, and asset status changes \u2014 so automation can react to far more of what actually happens in your day-to-day operations.<\/li>\r\n        <\/ul>\r\n\r\n        <h4>Granular conditions for tickets<\/h4>\r\n        <ul>\r\n          <li>New condition types cover K-12 institutional location fields, organizational context and roles, ticket tags and topic-based assignments, and operational metrics like SLA and time-in-status \u2014 giving you far more precise control over exactly which tickets a workflow touches.<\/li>\r\n        <\/ul>\r\n\r\n        <h4>Powerful new actions<\/h4>\r\n        <ul>\r\n          <li>Team assignment and load balancing, tagging and splitting tickets, creating linked tasks and approvals, customer replies, emails, and webhook creation are all now available as actions \u2014 so more of the multi-step, cross-team work your district relies on can run without manual handoffs.<\/li>\r\n        <\/ul>\r\n\r\n        <h4>View Workflow Details<\/h4>\r\n        <p>As your automation footprint grows, keeping track of what's already running can take more time than building something new. Workflows 2.0 makes ongoing management just as easy as setup:<\/p>\r\n        <ul>\r\n          <li><strong>Simplified workflow list<\/strong> \u2014 find any workflow instantly, segmented by category and trigger, with search by name or tag and easy drag-to-reorder and edit controls.<\/li>\r\n          <li><strong>Plain-language logic previews<\/strong> \u2014 expand any workflow to see its conditions and actions written out as readable, natural-language clauses \u2014 no need to open the builder just to understand what a workflow does.<\/li>\r\n          <li><strong>Execution logs, built in<\/strong> \u2014 every workflow now captures a detailed execution history, with KPI cards for executions, success rate, skipped runs, errors, and average duration, plus an expandable event stream showing the trigger, outcome, conditions, and actions behind every run.<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: Getting ready -->\r\n    <details class=\"dive-card\">\r\n      <summary>How do I prepare for this change?\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <p>Moving to Workflows 2.0 is designed to be low-effort \u2014 your existing automations keep working while you adopt the new engine at your own pace.<\/p>\r\n        <div class=\"prep-highlight\">\r\n          <strong>Step one: nothing breaks today.<\/strong> Every workflow your district has already built keeps running exactly as it does now, tucked into a new <strong>Legacy Workflows<\/strong> section. There's nothing you need to do before this release goes live.\r\n        <\/div>\r\n        <h4>Also worth doing<\/h4>\r\n        <div class=\"num-row\"><span class=\"num-badge\">1<\/span><p>To update a workflow, create a new one on the updated Workflows section \u2014 workflows can only be created in the new section going forward.<\/p><\/div>\r\n        <div class=\"num-row\"><span class=\"num-badge\">2<\/span><p>Take a look at the new trigger, condition, and action options; many multi-workflow setups (like per-location routing) can now be consolidated into one.<\/p><\/div>\r\n        <div class=\"num-row\"><span class=\"num-badge\">3<\/span><p>Bookmark the Execution Logs view \u2014 it's the fastest way to see how your automations are actually performing once you start building in the new engine.<\/p><\/div>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- Collapsible: FAQ -->\r\n    <details class=\"dive-card\">\r\n      <summary>FAQ\r\n        <span class=\"chev\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">expand_more<\/span>\r\n        <\/span>\r\n      <\/summary>\r\n      <div class=\"dive-body\">\r\n        <ul>\r\n          <li><strong>Our district has already built multiple workflows. What happens to them?<\/strong> Nothing changes for you automatically. Every workflow you've already built keeps running exactly as it does today, organized into a new Legacy Workflows section.<\/li>\r\n          <li><strong>Do we have to rebuild our existing workflows to keep using them?<\/strong> No. Legacy workflows keep operating as-is. You only need to recreate the workflow in the new engine when you want to edit it or take advantage of the new triggers, conditions, or actions.<\/li>\r\n          <li><strong>Can we edit an existing (legacy) workflow?<\/strong> No, to make use of the updated capabilities the workflow needs to be recreated in the new Workflows section.<\/li>\r\n          <li><strong>Where do we create new workflows now?<\/strong> All new workflows are created in the new Workflows section going forward. The legacy section remains for viewing and running your existing automations, not for building new ones.<\/li>\r\n          <li><strong>Will our execution history carry over when we move a workflow?<\/strong> Since a workflow has to be recreated in Workflows 2.0, it starts fresh with its own execution log in the new, more detailed format \u2014 giving you success rates, error details, and run-by-run breakdowns you didn't have before.<\/li>\r\n          <li><strong>Does Workflows 2.0 work across Tickets, and Assets?<\/strong> Yes. Both record types now live on the same automation interface, so you can build consistent logic across ticketing and asset management instead of maintaining separate systems for each.<\/li>\r\n          <li><strong>What's new in terms of what a workflow can actually check or do?<\/strong> Conditions now cover institutional details like campus, building, room, and role, along with tags, topics, and metrics like SLA and time-in-status. Actions now include things like team load balancing, ticket splitting, linked tasks and approvals, customer replies, emails, and webhooks \u2014 letting a single workflow handle far more of a multi-step process.<\/li>\r\n          <li><strong>How do we know if a workflow is actually working well?<\/strong> Every workflow in the new engine comes with built-in Execution Logs \u2014 showing number of executions, success rate, skipped and failed runs, average duration, and an expandable view of exactly what happened on each run.<\/li>\r\n          <li><strong>Is there a cost to move to Workflows 2.0, or is it included in our current plan?<\/strong> Workflows 2.0 is part of this platform release available at no additional cost.<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/details>\r\n\r\n    <!-- HIDDEN (unhide later): Workflow Automation 2.0 flyer\r\n    <a class=\"resource-card\" href=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/09\/onflo-workflow-flyer.pdf\" download=\"Onflo-Workflow-Automation-2.0.pdf\">\r\n      <span class=\"rc-icon\">\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">description<\/span>\r\n      <\/span>\r\n      <span class=\"rc-text\">\r\n        <span class=\"rc-eyebrow\">Downloadable Flyer<\/span>\r\n        <h4>Workflow Automation 2.0 \u2014 Product Flyer<\/h4>\r\n        <p>The full one-pager: building blocks, monitoring, and legacy vs. new comparison.<\/p>\r\n      <\/span>\r\n      <span class=\"rc-cta\">\r\n        Download PDF\r\n        <span class=\"onflo-icon\" aria-hidden=\"true\">download<\/span>\r\n      <\/span>\r\n    <\/a>\r\n    -->\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== AI Enhancements (full detail, short template) ===== -->\r\n  <section class=\"panel\" data-panel=\"ai-phone-agent\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>New Capability<\/span>\r\n      <span class=\"badge blue\">AI Phone Agent<\/span>\r\n      <span class=\"badge neutral\">Beta<\/span>\r\n    <\/div>\r\n    <h2 class=\"title tight\">Introducing Flo: The AI Phone Agent \u2014 Beta<\/h2>\r\n    <p class=\"subheading\">Respond and Route Calls 24\/7<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n    <p class=\"overview-hook\">Every call now gets answered, transferred, or handled intelligently.<\/p>\r\n    <p class=\"overview-text\">The AI Phone Agent answers the phone lines your district already uses. It greets callers, answers questions from your district's own knowledge base, transfers calls to the right building, department, or employee, or takes a message \u2014 all without inventing answers beyond what your district has set up. The AI Phone Agent runs beside your legacy call center, line by line, so a district can run both systems at once.<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n    <div class=\"benefit-band\">\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Reduces manual routing as callers get transferred straight to the right building, department, or employee<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Answers questions directly from your district's own knowledge base<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Recognizes and escalates safety and distress calls automatically<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Calls can queue into a full call center experience, with priority routing, callbacks, and hold options<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">How do I prepare for this change?<\/h3>\r\n    <p class=\"overview-text\">Onflo AI Phone Agent is a new capability, and is not immediately available with your existing plan. If you are interested in adopting AI Phone Agent, please reach out to your Onflo Support Team.<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">FAQ<\/h3>\r\n    <div class=\"faq-list\">\r\n      <div class=\"faq-item\">\r\n        <h4>Is Flo replacing our existing phone system or phone numbers?<\/h4>\r\n        <p>No. Flo runs alongside the legacy call center, and each phone line can be assigned to Flo if required. Districts can roll it out line by line.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>How do we stop Flo from giving incorrect or made-up answers?<\/h4>\r\n        <p>Flo only answers from the district's configured AI Training Resources. If those resources do not cover the question, Flo transfers the caller instead.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What if a caller wants to speak to a person?<\/h4>\r\n        <p>Flo can transfer callers to a building, department, employee, call-center queue, or the required failover number when it cannot determine where else to send them.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens with a safety or distress call?<\/h4>\r\n        <p>Flo detects two escalation scenarios \u2014 Distress and Safety \u2014 and rings the district's configured escalation contacts. Crisis detection remains active even if knowledge answering is turned off.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens if Flo cannot understand or help the caller?<\/h4>\r\n        <p>Flo can make up to three attempts for knowledge questions, then hands the caller on. If it still cannot help, the line uses voicemail, a missed-call message, or the failover number.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can Flo transfer callers to individual employees, schools, and departments?<\/h4>\r\n        <p>Yes. Flo can transfer to Building, Department, and Employee directories, limited to the coverage configured for that phone line.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens after hours, on holidays, or when schools are closed?<\/h4>\r\n        <p>Flo still answers. Callers hear the after-hours greeting, and transfers go to voicemail instead of ringing a desk.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Are Flo calls recorded or transcribed?<\/h4>\r\n        <p>Recording and transcription are configured per phone line. If either is enabled, an automatic FERPA disclosure plays at the start of the call and cannot be turned off.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can we test Flo before making a line live?<\/h4>\r\n        <p>Yes. Every line must pass a readiness check, and an administrator can call the line from their own phone to hear the caller experience before activation.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens if Flo is unavailable?<\/h4>\r\n        <p>If Flo is down, the phone carrier forwards every call directly to the line's required failover number, so your processes are not impacted.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Does Flo support multiple languages?<\/h4>\r\n        <p>Yes. English and Spanish are included on every call by default, with no additional setup or purchase required.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can different phone lines have different Flo setups?<\/h4>\r\n        <p>Yes. Flo is configured per phone line, including coverage, greetings, recording, voicemail, failover, services, and call-center queues.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>How does Flo decide which call-center queue to use?<\/h4>\r\n        <p>Flo matches what the caller asks for against each queue's topic and routing description, checking priority queues first.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What options do callers have while waiting in a queue?<\/h4>\r\n        <p>Depending on the queue configuration, callers can request a callback, leave voicemail, hear estimated wait time, or hear repeating messages while they wait.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== AI Enhancements (full detail, short template) ===== -->\r\n  <section class=\"panel\" data-panel=\"ai\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>AI Upgrade<\/span>\r\n      <span class=\"badge blue\">AI Assist<\/span>\r\n      <span class=\"badge neutral\">Chatbot<\/span>\r\n      <span class=\"badge neutral\">Website Scan<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\" style=\"border-top:none; padding-top:0;\">\r\n      <h2 class=\"title tight\">AI Assist for Tickets<\/h2>\r\n      <p class=\"subheading\">Cut the Hunting. Speed Up Every Resolution.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Your agents just got AI Assistance for every ticket.<\/p>\r\n      <p class=\"overview-text\">When an agent opens a ticket, Onflo now surfaces up to four banners above the conversation \u2014 flagging critical issues, known outages, duplicate reports, and knowledge-base articles that might already solve it. Every banner is a suggestion the agent reviews and confirms; nothing closes, merges, links, or replies on its own. The result is less time spent hunting and re-investigating, and more time actually resolving tickets.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Slash Resolution Times with Instant Context<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Draft Responses in Seconds while maintaining quality control<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Free Up Support Capacity for Complex Issues<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Instantly identify duplicates, outages and critical issues<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Combine AI Speed with Human Precision using a human-in-the-loop workflow<\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n\r\n      <!-- HIDDEN (unhide later): AI-Driven Chatbot & CoPilot flyer\r\n      <a class=\"resource-card\" href=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/09\/ai-copilot-flyer.pdf\" download=\"Onflo-AI-CoPilot-Flyer.pdf\">\r\n        <span class=\"rc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">description<\/span>\r\n        <\/span>\r\n        <span class=\"rc-text\">\r\n          <span class=\"rc-eyebrow\">Downloadable Flyer<\/span>\r\n          <h4>AI-Driven Chatbot &amp; CoPilot \u2014 Product Flyer<\/h4>\r\n          <p>How Flo AI improves operations at every stage of the ticket, from deflection to resolution.<\/p>\r\n        <\/span>\r\n        <span class=\"rc-cta\">\r\n          Download PDF\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">download<\/span>\r\n        <\/span>\r\n      <\/a>\r\n      -->\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Readiness Check for AI Chatbot<\/h2>\r\n      <p class=\"subheading\">Turn \"How's My Chatbot Doing?\" Into a Number You Can Track<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Now you can be sure your chatbot is accurate<\/p>\r\n      <p class=\"overview-text\">Readiness Check sends your chatbot the same set of 100 real questions people actually ask, grades every answer, and returns a score plus a ranked list of what to fix. Nothing about your chatbot or content changes when a check runs \u2014 it only asks checks and grades what comes back. The result is a baseline score you can point to, and a clear, prioritized to-do list for improving it.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Prioritize fixes with baseline readiness score and a ranked Improvement plan<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Continuously improve output by re-running checks after updates<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Optimize fixes by knowing which change improves the score the most<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Multi-School Website Scan for AI Training<\/h2>\r\n      <p class=\"subheading\">Fine-tune School Specific Responses<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Easier to scan one website and train AI for district and school-specific queries<\/p>\r\n      <p class=\"overview-text\">When a website scan finds a district with separate school sites, you now get one new step: choose which schools to onboard. Every school starts selected, and you can search, or check and clear whole sections at once. The district's own pages \u2014 like policies and the calendar \u2014 are automatically counted separately and created as their own resource, so nothing gets misfiled under a single school.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Easier onboarding of an entire district's schools from a single website scan, each school created as its own resource<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Bulk-edit topics, tags, managers, or chatbot profiles across many schools at once<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Improve accuracy at all levels with district-wide policies and the calendar<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">FAQ<\/h3>\r\n    <div class=\"faq-list\">\r\n      <div class=\"faq-item\">\r\n        <h4>Can an AI Assist take action on its own?<\/h4>\r\n        <p>No \u2014 every banner is a suggestion the agent reviews and confirms. The only thing that happens automatically is setting the priority on a critical ticket.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Why does a banner sometimes show nothing?<\/h4>\r\n        <p>A match has to clear a relevance floor of around 80% to be shown at all, and only the top three appear. A banner full of near misses would just teach agents to ignore it \u2014 you can still open the knowledge base directly from the ticket.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens when an agent marks a ticket as a duplicate?<\/h4>\r\n        <p>One ticket stays primary; the rest close and link to it, with their reply box switched off. Communication goes out from the primary, and a duplicate can be unlinked and reopened later.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens when a ticket is linked to a known issue?<\/h4>\r\n        <p>It's attached to the global ticket and added to the Known Issues panel, so one Reply to All can answer everyone affected \u2014 and that global ticket can be published to the customer portal so people see it before they file.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What makes AI Assist more accurate?<\/h4>\r\n        <p>Three things your district controls: your knowledge base (thin or stale articles are the most common reason a banner stays empty), your topic structure, and whether a global ticket is published to the customer portal.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Does running a Readiness Check change my chatbot or content?<\/h4>\r\n        <p>No. It only sends the fixed set of 100 questions and grades the answers that come back \u2014 nothing about your chatbot or resources changes.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Why can't I re-run a check right away?<\/h4>\r\n        <p>A score only changes when the underlying content changes. Once you add or update a resource, the check becomes available again so you can see whether the change worked.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What if my account uses department modules?<\/h4>\r\n        <p>Each module is tested against its own fixed set of 100 questions and gets its own separate results.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens if a website scan finds a district instead of a single school?<\/h4>\r\n        <p>You'll get one extra step: choosing which schools to onboard. Every school starts selected \u2014 just uncheck the ones you don't want, or check\/clear a whole section at once.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Will scanning create duplicate resources for schools already onboarded?<\/h4>\r\n        <p>No. A school already in your library is marked Onboarded, locked, and can't be selected again.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== Ticketing Enhancements (full detail, short template) ===== -->\r\n  <section class=\"panel\" data-panel=\"assets\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>New Capability<\/span>\r\n      <span class=\"badge blue\">IT Asset Management<\/span>\r\n      <span class=\"badge neutral\">Linked Assets<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\" style=\"border-top:none; padding-top:0; margin-top:24px;\">\r\n      <h2 class=\"title tight\">Linked Assets: Carts &amp; Containers, Finally Connected<\/h2>\r\n      <p class=\"subheading\">Smarter Asset Relationships, Effortless Location Tracking<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Your carts and containers no longer just hold devices \u2014 they manage them.<\/p>\r\n      <p class=\"overview-text\">Onflo now supports true parent-child relationships between assets, so a cart and every device inside it move, and get checked out as one connected unit. Reassign the parent's location and every child follows automatically. Build these relationships in bulk from Bulk Edit or straight from your asset import file \u2014 no more chasing down devices one by one.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Move a cart, move every device inside \u2014 reassigning a parent's location automatically relocates all of its children<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Audit-ready in seconds \u2014 the new Related Assets tab shows a parent, its children, and linked assets in one place<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Accountability without busywork \u2014 check devices out to students and back into their parent cart, keeping chain of custody intact<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Onboard carts in bulk \u2014 link hundreds of assets at once from Bulk Edit or your import file<\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n\r\n      <a class=\"resource-card\" href=\"https:\/\/www.onflo.com\/learningcenter\/wp-content\/uploads\/2026\/09\/onflo-itam-flyer.pdf\" download=\"Onflo-ITAM-October-Release.pdf\">\r\n        <span class=\"rc-icon\">\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">description<\/span>\r\n        <\/span>\r\n        <span class=\"rc-text\">\r\n          <span class=\"rc-eyebrow\">Downloadable Flyer<\/span>\r\n          <h4>What's New in Onflo IT Asset Management \u2014 Product Flyer<\/h4>\r\n          <p>Linked Assets, Asset Fields, Scheduled Import, Container Import, and existing IT Asset Management capabilities.<\/p>\r\n        <\/span>\r\n        <span class=\"rc-cta\">\r\n          Download PDF\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">download<\/span>\r\n        <\/span>\r\n      <\/a>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Enhancing Asset Fields<\/h2>\r\n      <p class=\"subheading\">Cleaner Data, Fewer Import Headaches<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Your asset data just got a serious quality upgrade.<\/p>\r\n      <p class=\"overview-text\">A redesign of the core asset data model fixes longstanding data-quality gaps \u2014 free-text device names, mismatched manufacturer\/model pairs, and assignments that conflated people and locations. Manufacturer and Model are now a shared, linked catalog, Asset ID is required and unique, and Cost is a true numeric field you can actually report on. Assignment is also split into distinct Person and Location fields, complete with history, so you can see who and where an asset was assigned previously \u2014 not just today.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Manufacturer and Model are linked in a shared catalog, so a Model can never attach to the wrong Manufacturer<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Asset ID is required and unique, giving you a reliable field to drive physical barcodes and tags<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Cost is stored as a true numeric field, so spend can be aggregated and reported on<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>See full assignment history \u2014 who and where an asset was assigned, not just today<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Enabling Scheduled Asset Imports<\/h2>\r\n      <p class=\"subheading\">Set It Once. Stay in Sync Automatically.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Manual re-imports are now optional.<\/p>\r\n      <p class=\"overview-text\">A new scheduled import capability lets IT admins connect a data source once and have Onflo keep asset data in sync automatically. Link a Cloud URL source like Google Sheets or OneDrive, or connect to an SFTP location \u2014 Onflo fetches and imports on the schedule you configure, or on demand whenever you need an immediate sync. A Source Details page and a full list of scheduled sources keep every sync visible in one place.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Connect a Cloud URL (Google Sheets or OneDrive) or SFTP source once, and let Onflo keep asset data in sync automatically going forward<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Trigger an immediate sync on demand whenever you need current data, without waiting for the next scheduled run<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>See every source's configuration and full sync history in one Source Details page<\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">FAQ<\/h3>\r\n    <div class=\"faq-list\">\r\n      <div class=\"faq-item\">\r\n        <h4>Will I still need a serial number to import assets?<\/h4>\r\n        <p>No \u2014 Serial Number is no longer required, so imports from legacy systems aren't blocked when it's unknown.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens to my existing Manufacturer and Model values?<\/h4>\r\n        <p>They move into the new shared, linked catalog, so a Model can never be mismatched to the wrong Manufacturer going forward.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can I see who had an asset assigned to them last year, not just now?<\/h4>\r\n        <p>Yes \u2014 assignment history is now tracked separately from current assignment, along with the full location hierarchy.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What sources can a scheduled import connect to?<\/h4>\r\n        <p>A Cloud URL source (Google Sheets or OneDrive) or an SFTP location \u2014 either an existing one or one Onflo auto-provisions for you.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Do I have to wait for the next scheduled run to sync?<\/h4>\r\n        <p>No \u2014 you can trigger an immediate sync from a source on demand at any time, without waiting for its next scheduled run.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>What happens if I move a parent asset's location?<\/h4>\r\n        <p>All of its children automatically move with it \u2014 there's no need to update each device individually.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can a child asset be reassigned to a different parent?<\/h4>\r\n        <p>Yes \u2014 you can move a child asset to a different parent whenever it needs to change hands.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Does this work with asset imports?<\/h4>\r\n        <p>Yes. The asset import template now includes Child Assets and Related Assets columns, so you can set up relationships directly from your import file \u2014 multiple asset IDs can be comma-separated, and any missing IDs are flagged in the import error file.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Where do I see everything linked to an asset?<\/h4>\r\n        <p>The new Related Assets tab on any asset record shows its parent, children, and linked assets, with quick access to all the related actions.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>How do I set up a cart or container with this new model?<\/h4>\r\n        <p>The Add Container form has been refreshed to support parent-child relationships from the start, or you can build relationships afterward from Bulk Edit by attaching assets to an existing parent, promoting one into a new parent, or designating a parent for the rest of your selection.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n  <section class=\"panel\" data-panel=\"tickets\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>Ticketing<\/span>\r\n      <span class=\"badge blue\">Automation<\/span>\r\n      <span class=\"badge neutral\">IT Tickets<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Enhanced Duplicate Tagging of Tickets<\/h2>\r\n      <p class=\"subheading\">Cleaner Communication Across Linked Tickets<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Duplicate handling just got a lot more precise.<\/p>\r\n      <p class=\"overview-text\">Building on the existing Mark as Duplicate capability, this release adds finer control over how communication flows between linked tickets. Customers can be notified automatically when their ticket is linked, agents get full context from secondary-ticket activity surfaced on the primary, and secondary tickets stay safely closed \u2014 with no risk of an accidental reopening.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Better customers experience with automated notification when their ticket is linked as a duplicate<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Agent visibility to see activity from a secondary ticket surfaced directly on the primary, tagged with a clear reference badge<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Better process control as secondary tickets stay safely closed, even after a customer reply as only staff can unlink and reopen when needed<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"feature-block\">\r\n      <h2 class=\"title tight\">Scheduled &amp; Recurring IT Tickets<\/h2>\r\n      <p class=\"subheading\">Automatic creation of required tickets<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n      <p class=\"overview-hook\">Routine IT tickets no longer need to be recreated by hand.<\/p>\r\n      <p class=\"overview-text\">Building on the Create IT Ticket flow, agents can now schedule an IT ticket for a future date or set it up to recur automatically on a set cadence. A new Schedule Ticket action is available right on the Details step of the flow, so setting up routine, repeatable work takes a single extra click.<\/p>\r\n\r\n      <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n      <div class=\"benefit-band\">\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Schedule a one-time IT ticket for a future date instead of remembering to create it manually<\/p>\r\n        <\/div>\r\n        <div class=\"benefit-row\">\r\n          <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n          <p>Set up recurring IT tickets to run automatically on a set cadence, eliminating repetitive manual work<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">FAQ<\/h3>\r\n    <div class=\"faq-list\">\r\n      <div class=\"faq-item\">\r\n        <h4>Will a customer know their ticket was marked a duplicate?<\/h4>\r\n        <p>Yes \u2014 by default, a message is sent automatically confirming their ticket was linked to an existing one and that further updates will come from the primary ticket.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can a customer accidentally reopen a secondary ticket by replying to it?<\/h4>\r\n        <p>No. Customer replies on a secondary ticket never reopen it or trigger notifications \u2014 only activity on the primary ticket does. Negative-sentiment detection still reopens the primary ticket, as it does today.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can agents reopen a secondary ticket if they need to?<\/h4>\r\n        <p>Yes, but it must first be unlinked from its primary ticket before it can move out of Closed status.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Where do I schedule an IT ticket?<\/h4>\r\n        <p>From the Details step (Step 3) of the Create IT Ticket flow, using the new Schedule Ticket action.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can a scheduled IT ticket repeat automatically?<\/h4>\r\n        <p>Yes \u2014 you can schedule a one-time ticket for a future date, or configure it to recur on a set cadence.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== Dashboard 2.0 (full detail, short template) ===== -->\r\n  <section class=\"panel\" data-panel=\"dashboard\">\r\n\r\n    <div class=\"badge-row\">\r\n      <span class=\"badge navy\"><span class=\"dot\"><\/span>Dashboards<\/span>\r\n      <span class=\"badge blue\">Reporting<\/span>\r\n      <span class=\"badge neutral\">Filters &amp; Views<\/span>\r\n    <\/div>\r\n    <h2 class=\"title tight\">Smarter Dashboard Filters<\/h2>\r\n    <p class=\"subheading\">Filter The Data You Need, and Save The View for Next Time<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Overview<\/h3>\r\n    <p class=\"overview-hook\">Your dashboards just got a serious filtering upgrade.<\/p>\r\n    <p class=\"overview-text\">The Service Overview, Comparison (Users \/ Categories \/ Topics), and Custom Reports dashboards now come with a dedicated filter modal, saved filter sets, and full saved views, so getting to the exact slice of data you need takes seconds, not a rebuild every time. Once you've built a view worth keeping, save it and it's one click away from the sidebar going forward.<\/p>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">Benefits<\/h3>\r\n    <div class=\"benefit-band\">\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Easy search to choose and apply filters from a single modal, with a badge showing how many are active<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Quick save a filter combination under a name and reuse it anytime<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Save viewing space with active filter chips below the toolbar, and collapse them to a summary chip<\/p>\r\n      <\/div>\r\n      <div class=\"benefit-row\">\r\n        <span class=\"b-icon\"><span class=\"onflo-icon\" aria-hidden=\"true\">check<\/span><\/span>\r\n        <p>Save a full view \u2014 filters, date range, and tab \u2014 and reload it exactly as you left it from the sidebar<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <h3 class=\"subhead\" style=\"margin-top:36px;\">FAQ<\/h3>\r\n    <div class=\"faq-list\">\r\n      <div class=\"faq-item\">\r\n        <h4>What's the difference between a saved filter set and a saved view?<\/h4>\r\n        <p>A saved filter set only remembers your filter combination. A saved view also captures your date range and active tab, column layout, sort order, filters of active tabs and so on - so it reloads the whole dashboard exactly as you left it.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can I update a saved filter set later?<\/h4>\r\n        <p>Yes \u2014 load it, adjust it, and save it as a new set or update the original.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Which dashboards get the new filtering experience?<\/h4>\r\n        <p>Service Overview, Comparison (Users \/ Categories \/ Topics), and Custom Reports.<\/p>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <h4>Can I remove filters quickly?<\/h4>\r\n        <p>Yes \u2014 remove them individually or clear them all at once from the filter modal, or collapse the applied filters bar to a single summary chip whenever you need the screen space back.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n  <!-- ===== Linked Assets (full detail, short template) ===== -->\r\n<\/main>\r\n\r\n<section class=\"past-releases\">\r\n  <div class=\"wrap\">\r\n    <div class=\"pr-head\">\r\n      <h3 class=\"subhead\">Past Releases<\/h3>\r\n      <p class=\"pr-sub\">Catch up on what shipped in previous months.<\/p>\r\n    <\/div>\r\n    <div class=\"past-grid\">\r\n      <a class=\"past-tile\" href=\"https:\/\/www.onflo.com\/learningcenter\/product-updates\/new-in-onflo-july-2026-part-2\/\" target=\"_blank\" rel=\"noopener\">\r\n        <span class=\"pt-tag\">Learning Center<\/span>\r\n        <h4>New in Onflo \u2014 July 2026 (Part 2)<\/h4>\r\n        <span class=\"pt-cta\">Read the release notes\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">arrow_forward<\/span>\r\n        <\/span>\r\n      <\/a>\r\n      <a class=\"past-tile\" href=\"https:\/\/www.onflo.com\/learningcenter\/product-updates\/new-in-onflo-june-2026-part-1\/\" target=\"_blank\" rel=\"noopener\">\r\n        <span class=\"pt-tag\">Learning Center<\/span>\r\n        <h4>New in Onflo \u2014 June 2026 (Part 1)<\/h4>\r\n        <span class=\"pt-cta\">Read the release notes\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">arrow_forward<\/span>\r\n        <\/span>\r\n      <\/a>\r\n      <a class=\"past-tile\" href=\"https:\/\/www.onflo.com\/learningcenter\/product-updates\/new-in-onflo-june-2026\/\" target=\"_blank\" rel=\"noopener\">\r\n        <span class=\"pt-tag\">Learning Center<\/span>\r\n        <h4>New in Onflo \u2014 June 2026<\/h4>\r\n        <span class=\"pt-cta\">Read the release notes\r\n          <span class=\"onflo-icon\" aria-hidden=\"true\">arrow_forward<\/span>\r\n        <\/span>\r\n      <\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<div class=\"closing\">\r\n  <div class=\"wrap\">\r\n    <p>Questions about naming your Global Admin or getting ready for the release? Reach out to your <strong>Onflo success team<\/strong> \u2014 we're glad to help.<\/p>\r\n  <\/div>\r\n<\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n\/* Onflo Product Release Roundup \u2014 tab + deep-link behaviour *\/\r\n(function () {\r\n    var buttons = document.querySelectorAll('.tab-btn');\r\n    var panels = document.querySelectorAll('.panel');\r\n    var validTabs = Array.prototype.map.call(panels, function (p) {\r\n      return p.getAttribute('data-panel');\r\n    });\r\n    \/\/ Height reserved for the host site's own sticky header (see .tabbar-wrap's\r\n    \/\/ `top` value in the CSS) \u2014 every scroll-to-tab calculation below has to\r\n    \/\/ account for it, or the sticky tab bar ends up overlapping the content\r\n    \/\/ it just scrolled to.\r\n    var STICKY_HEADER_OFFSET = 117;\r\n\r\n    \/\/ Returns the scrollY that puts the tab bar at its stuck resting position\r\n    \/\/ (STICKY_HEADER_OFFSET from the top). Deliberately NOT based on the bar's\r\n    \/\/ own offsetTop\/getBoundingClientRect: once a `position: sticky` element\r\n    \/\/ has been scrolled past its natural position, browsers report its own\r\n    \/\/ offsetTop\/rect inconsistently (it reflects the current stuck position,\r\n    \/\/ not the fixed document position), which produced wrong scroll targets\r\n    \/\/ depending on scroll state. Anchoring to the non-sticky element right\r\n    \/\/ before the bar avoids that entirely, since a normal element's position\r\n    \/\/ is always reliable regardless of scroll state.\r\n    function tabbarScrollTarget() {\r\n      var bar = document.querySelector('.tabbar-wrap');\r\n      if (!bar) { return 0; }\r\n      var anchor = document.querySelector('.hl-hint') || bar;\r\n      var rectBottomOrTop = anchor === bar\r\n        ? anchor.getBoundingClientRect().top\r\n        : anchor.getBoundingClientRect().bottom;\r\n      return rectBottomOrTop + window.pageYOffset - STICKY_HEADER_OFFSET - 1;\r\n    }\r\n\r\n    function activate(tabId, updateUrl) {\r\n      if (validTabs.indexOf(tabId) === -1) { tabId = 'modules'; }\r\n      buttons.forEach(function (b) {\r\n        b.classList.toggle('is-active', b.getAttribute('data-tab') === tabId);\r\n      });\r\n      panels.forEach(function (p) {\r\n        p.classList.toggle('is-active', p.getAttribute('data-panel') === tabId);\r\n      });\r\n      if (updateUrl !== false && history.replaceState) {\r\n        history.replaceState(null, '', '#' + tabId);\r\n      }\r\n    }\r\n\r\n    buttons.forEach(function (btn) {\r\n      btn.addEventListener('click', function () {\r\n        activate(btn.getAttribute('data-tab'));\r\n        window.scrollTo({ top: tabbarScrollTarget(), behavior: 'smooth' });\r\n      });\r\n    });\r\n\r\n    document.querySelectorAll('.tab-link').forEach(function (link) {\r\n      link.addEventListener('click', function (e) {\r\n        e.preventDefault();\r\n        activate(link.getAttribute('data-tab'));\r\n        window.scrollTo({ top: tabbarScrollTarget(), behavior: 'smooth' });\r\n      });\r\n    });\r\n\r\n    document.querySelectorAll('.hl-card').forEach(function (btn) {\r\n      btn.addEventListener('click', function () {\r\n        activate(btn.getAttribute('data-tab'));\r\n        window.scrollTo({ top: tabbarScrollTarget(), behavior: 'smooth' });\r\n      });\r\n    });\r\n\r\n    document.querySelectorAll('#oprs26-hlSvg .hl-link').forEach(function (card) {\r\n      function go() {\r\n        activate(card.getAttribute('data-tab'));\r\n        window.scrollTo({ top: tabbarScrollTarget(), behavior: 'smooth' });\r\n      }\r\n      card.addEventListener('click', go);\r\n      card.addEventListener('keydown', function (e) {\r\n        if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); go(); }\r\n      });\r\n    });\r\n\r\n    function activateFromHash(instant) {\r\n      var hash = window.location.hash.replace('#', '');\r\n      activate(hash || 'modules', false);\r\n      if (hash) {\r\n        window.scrollTo({ top: tabbarScrollTarget(), behavior: instant ? 'auto' : 'smooth' });\r\n      }\r\n    }\r\n\r\n    window.addEventListener('hashchange', function () { activateFromHash(false); });\r\n    activateFromHash(true);\r\n  })();\r\n\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>October, 2026: Release Highlights View Release Webinar arrow_forward ARCHITECTURAL FOUNDATION EXPANDED CAPABILITIES 1 Onflo Modules Flexible, multi- tenant architecture with department- level control. 2 Agent Management Enterprise-grade user management with granular roles &amp; permissions. 3 Workflows 2.0 More triggers, conditions and actions, and now easier to manage. BETA 4 AI Phone Agent Industry-first AI phone...<\/p>\n","protected":false},"author":27,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_kad_post_transparent":"default","_kad_post_title":"default","_kad_post_layout":"default","_kad_post_sidebar_id":"","_kad_post_content_style":"default","_kad_post_vertical_padding":"default","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[414],"class_list":["post-17521","post","type-post","status-publish","format-standard","hentry","category-product-updates"],"_links":{"self":[{"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/posts\/17521","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/comments?post=17521"}],"version-history":[{"count":37,"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/posts\/17521\/revisions"}],"predecessor-version":[{"id":17584,"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/posts\/17521\/revisions\/17584"}],"wp:attachment":[{"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/media?parent=17521"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.onflo.com\/learningcenter\/wp-json\/wp\/v2\/categories?post=17521"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}